簡體   English   中英

使用關鍵字分隔 HTML 文件以進行抓取

[英]Separating HTML file with keyword for scraping

我正在使用 Scrapy 在 Python 中編程,並且有一個巨大的html文件,其結構類似於下面演示的結構:

<span>keyword</span>
<title>Title 1</title>
<span>Date 1</span>
<div>Content 1</div>

<span>keyword</span>
<title>Title 2</title>
<span>Date 2</span>
<div>Content 2</div>

...

<span>keyword</span>
<title>Title N</title>
<span>Date N</span>
<div>Content N</div>

我的目標是獲取每個部分的div所有titledate和內容,但這些部分本身並不位於單獨的div或其他元素中,只是一個接一個,直到第 N 個部分。

雖然我可以嘗試將所有的title[1:N]date[1:N]div[1:N]作為len() = N的列表,這樣做會阻止調試,好像N達到 10,000 和len(title)==len(date)==len(div) -> False ,很難找到哪里出錯了(例如有些標題放在<strong>而不是<title> )。

我注意到的一項是位於每個部分之間的關鍵字 借助該關鍵字,是否可以將整個html分成 N 個部分,並希望通過迭代為每個部分獲得item[i] = ["Title_i", "Date_i", "DIV_i"]

這樣丟失的數據將表示為item[1]=["", Date_i, Div_i ]並且更容易定位。

Carl,您可以嘗試通過關鍵字將 html 文件內容拆分為簡潔的部分。

  1. 您應該能夠了解所有可能關鍵字的完整集合/字典。
  2. 某些關鍵字可能會在任何Content部分內重復...因此您最好不要使用純關鍵字值或<span>keyword</span>表達式進行拆分,而是使用最獨特的<span>keyword</span>\\s*<title><span>keyword</span><strong>表達式。 因此,您很有可能正確拆分零件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM