【发布时间】:2021-09-16 17:13:59
【问题描述】:
我正在尝试从 https://www.ziprecruiter.com/jobs-search?search=python&location=Ontario&company=&layout=&days=1 抓取数据
我尝试使用上面的链接,并且在浏览器中似乎可以正常工作。但是,当我使用下面的代码在 python 中从网站获取数据时,它似乎无法正确加载页面。
看起来它加载了一个加密的页面。
from bs4 import BeautifulSoup
import requests
response = requests.get('https://www.ziprecruiter.com/jobs-search?search=python&location=Ontario&company=&layout=&days=1')
soup = BeautifulSoup(response.text, 'html.parser')
print (soup)
【问题讨论】:
-
您尝试过其他页面吗?您的用户代理太便宜了...使用适当的用户代理重试尝试 3,以防万一,报告错误
-
我不是对你的问题投反对票的人......在我看来,你已经表现出明确的尝试来达成解决方案。我的评论是要添加一个更好的用户代理,比如
'Mozilla/5.0 (X11; Linux x86_64; rv:89.0) Gecko/20100101 Firefox/87.0'。如果您收到这样的响应,很明显您的请求被检测为机器人并拒绝访问 -
感谢您的帮助!我尝试了您的解决方案并得到了 - 响应 [403]。我认为他们有你提到的一些反爬虫安全检查。
-
@Henul 你试过硒吗?我试过了,我可以获取源页面
-
我忘了复制一行
implicitly_wait以便有足够的时间来呈现整个页面。抱歉,答案已更新
标签: python html web-scraping beautifulsoup python-requests-html