[英]Webscraping google search using BeautifulSoup in Python
正在從事一個項目來自動搜索幾千個谷歌搜索,並能夠檢查是否有“未找到結果”並輸入到數組中。
使用 BeautifulSoup,但我無法通過從 URL 導入 HTML 來開始:
from bs4 import BeautifulSoup
import requests
html = requests.get('www.lifehack.org')
soup = BeautifulSoup(html,'html.parser')
軟件包安裝正常,但出現錯誤:
MissingSchema Traceback (most recent call last)
<ipython-input-28-8e881302fa25> in <module>
1 from bs4 import BeautifulSoup
2 import requests
----> 3 html = requests.get('www.lifehack.org')
4 soup = BeautifulSoup(html,'html.parser')
C:\Program Files (x86)\Anaconda\lib\site-packages\requests\api.py in get(url, params, **kwargs)
73
74 kwargs.setdefault('allow_redirects', True)
+更多類似的東西
我不知道如何解決這個問題。 我希望能夠快速將 HTML 直接放入程序中,而不必復制它並保存在本地 HTML 文件中
任何幫助將不勝感激,謝謝。
首先,您應該發布完整的錯誤消息,如果您只發布了部分錯誤消息,則無法解決問題。
也就是說,可能導致問題的一件事是您的 url 需要完全合格。
html = requests.get('http://www.lifehack.org')
事實上,如果你發布了執行代碼時得到的完整錯誤,你會看到類似這樣的內容,這會給你答案:
MissingSchema:無效的 URL 'www.lifehack.org':未提供架構。 也許你的意思是http://www.lifehack.org ?
一旦你解決了這個問題,你就會遇到另一個問題:
回溯(最近一次調用最后一次):
文件“”,第 4 行,湯 = BeautifulSoup(html,'html.parser')
文件 "C:\\bs4__init__.py", line 267, in init elif len(markup) <= 256 and (
類型錯誤:“響應”類型的對象沒有 len()
您的html
變量是一個 Response 對象,您不能將其直接傳遞給 BeautifulSoup。 您想傳遞從響應中獲得的文本。
soup = BeautifulSoup(html.text,'html.parser')
這個故事的寓意:注意你的錯誤信息,它們是你的向導。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.