0
我試圖寫一個腳本執行谷歌搜索輸入關鍵字,返回僅前10個網址的內容的內容。的Python:執行谷歌的搜索和提取只能從個人前10個結果
注:內容具體指的是由搜索項要求,並在返回的URL的屍體被發現的內容。
我與搜索和排名前10位的URL取出部分完成。下面是該腳本:
from google import search
top_10_links = search(keyword, tld='com.in', lang='en',stop=10)
但是我無法檢索只從鏈接內容不知道它們的結構。我可以通過使用開發找不到標記的類等刮從一個特定的網站內容tools.But我無法弄清楚如何從頂部10結果網址獲取內容,因爲每一個搜索項有不同的URL(不同網站有不同的CSS選擇器),並且很難找到所需內容的CSS類。這裏是從特定網站提取內容的示例代碼。
content_dict = {}
i = 1
for page in links:
print(i, ' @ link: ', page)
article_html = get_page(page)#get_page() returns page's html
soup = BeautifulSoup(article_html, 'lxml')
content = soup.find('div',{'class': 'entry-content'}).get_text()
content_dict[page] = content
i += 1
但是,CSS類改變了不同的網站。有沒有我能得到這個腳本工作,並獲得所需的內容?
在很多情況下,你想要的內容是* *最裏面的一個網頁,即文本,它不包含進一步的*標記*。您可以編寫代碼,從'BeautifulSoup'也許正則表達式幫助,以便讓網頁最裏面的文字,無論其設計的,但不會非常有組織的(你可以得到不必要的文本以及)。 –
at @Sam :)我試過了,但得到了和你說的一樣的結果。我也收到了亂七八糟的文字。沒有辦法擺脫它 –
也許不是。 @pythad是正確的。沒有關於頁面結構的知識你就不能刮。 –