![](/img/trans.png)
[英]Web scraping using Beautiful Soup separating HTML and Javascript and CSS
[英]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
所有title
、 date
和內容,但這些部分本身並不位於單獨的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 文件內容拆分為簡潔的部分。
Content
部分內重復...因此您最好不要使用純關鍵字值或<span>keyword</span>
表達式進行拆分,而是使用最獨特的<span>keyword</span>\\s*<title>
和<span>keyword</span><strong>
表達式。 因此,您很有可能正確拆分零件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.