คำถามติดแท็ก html-content-extraction

30
ตัวเลือกสำหรับการขูด HTML หรือไม่ [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน6 ปีที่ผ่านมา ฉันกำลังคิดว่าจะลองBeautiful Soupซึ่งเป็นแพ็คเกจ Python สำหรับการขูด HTML มีแพ็คเกจการขูด HTML อื่น ๆ ที่ฉันควรจะดูหรือไม่ Python ไม่ใช่ข้อกำหนดฉันสนใจที่จะฟังเกี่ยวกับภาษาอื่นเช่นกัน เรื่องราวที่ผ่านมา: หลาม ซุปที่สวยงาม lxml HTQL Scrapy เปลี่ยนไปใช้เครื่องจักร ทับทิม Nokogiri hpricot เปลี่ยนไปใช้เครื่องจักร scrAPI scRUBYt! Wombat Watir .สุทธิ ชุดความคล่องตัว Html WatiN Perl WWW :: ใช้เครื่องจักร เว็บ Scraper ชวา แท็กซุป HtmlUnit เว็บเก็บเกี่ยว jARVEST jsoup …

30
แยกข้อความจากไฟล์ HTML โดยใช้ Python
ฉันต้องการแยกข้อความจากไฟล์ HTML โดยใช้ Python ฉันต้องการเอาท์พุทเดียวกับที่ฉันจะได้รับถ้าฉันคัดลอกข้อความจากเบราว์เซอร์และวางลงในแผ่นจดบันทึก ฉันต้องการบางสิ่งที่แข็งแกร่งกว่าการใช้นิพจน์ทั่วไปที่อาจล้มเหลวใน HTML ที่มีรูปแบบไม่ดี ฉันเคยเห็นหลายคนแนะนำ Beautiful Soup แต่ฉันมีปัญหาเล็กน้อยในการใช้ สำหรับหนึ่งมันหยิบข้อความที่ไม่ต้องการเช่นแหล่งที่มาของ JavaScript นอกจากนี้มันไม่ได้แปลเอนทิตี HTML ตัวอย่างเช่นฉันคาดหวัง & # 39; ในซอร์ส HTML ที่จะแปลงเป็นเครื่องหมายอัญประกาศเดี่ยวในข้อความราวกับว่าฉันได้วางเนื้อหาของเบราว์เซอร์ลงในสมุดบันทึก การปรับปรุง html2textดูมีแนวโน้ม มันจัดการเอนทิตี HTML อย่างถูกต้องและละเว้น JavaScript อย่างไรก็ตามมันไม่ได้ผลิตข้อความล้วน มันสร้างมาร์กดาวน์ที่จะต้องเปลี่ยนเป็นข้อความธรรมดา มันมาพร้อมกับตัวอย่างหรือเอกสารไม่ แต่รหัสดูสะอาด คำถามที่เกี่ยวข้อง: กรองแท็ก HTML และแก้ไขเอนทิตีในหลาม แปลงเอนทิตี XML / HTML เป็น Unicode String ใน Python

8
แยกส่วนของการจับคู่นิพจน์ทั่วไป
ฉันต้องการนิพจน์ทั่วไปเพื่อแยกหัวเรื่องจากหน้า HTML ขณะนี้ฉันมีสิ่งนี้: title = re.search('<title>.*</title>', html, re.IGNORECASE).group() if title: title = title.replace('<title>', '').replace('</title>', '') มีนิพจน์ทั่วไปในการแยกเฉพาะเนื้อหาของ <title> ดังนั้นฉันจึงไม่ต้องลบแท็กออกหรือไม่

10
BeautifulSoup คว้าข้อความหน้าเว็บที่มองเห็นได้
โดยพื้นฐานแล้วฉันต้องการใช้ BeautifulSoup เพื่อจับข้อความที่มองเห็นได้บนหน้าเว็บอย่างเคร่งครัด ตัวอย่างเช่นหน้าเว็บนี้เป็นกรณีทดสอบของฉัน และส่วนใหญ่ฉันต้องการรับข้อความเนื้อหา (บทความ) และอาจจะเป็นชื่อแท็บสองสามชื่อที่นี่และที่นั่น ฉันได้ลองใช้คำแนะนำในคำถาม SOนี้ซึ่งส่งคืน<script>แท็กและความคิดเห็น html จำนวนมากซึ่งฉันไม่ต้องการ ฉันไม่สามารถหาข้อโต้แย้งที่ต้องการสำหรับฟังก์ชันนี้findAll()เพื่อให้ได้ข้อความที่มองเห็นได้บนหน้าเว็บ ดังนั้นฉันจะค้นหาข้อความที่มองเห็นได้ทั้งหมดยกเว้นสคริปต์ความคิดเห็น css และอื่น ๆ ได้อย่างไร
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.