如何解决使用 Python 请求抓取网页并在更新标头后仍拒绝访问
这个 webscraper 已经工作了一段时间,但网站肯定已经更新,所以它不再工作了。每次请求后,我都会收到拒绝访问错误,我尝试添加标头,但仍然遇到相同的问题。这是代码打印的内容:
</html>
<html><head>
<title>Access Denied</title>
</head><body>
<h1>Access Denied</h1>
You don't have permission to access "http://www.jdsports.co.uk/product/white-nike-air-force-1-shadow-womens/15984107/" on this server.<p>
Reference #18.4d4c1002.1616968601.6e2013c
</p></body>
</html>
以下是获取 HTML 的部分代码:
scraper=requests.Session()
headers = {
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/39.0.2171.95 Safari/537.36',}
html = scraper.get(info[0],proxies= proxy_test,headers=headers).text
soup = BeautifulSoup(html,'html.parser')
print(soup)
stock = soup.findAll("button",{"class": "btn btn-default"})
我还能尝试修复什么?我要抓取的网站是 https://www.jdsports.co.uk/
解决方法
不确定你在哪里,但在美国,你的代码对我有用。我只需要使用不同的产品,因为上面在 url 中列出的产品不存在。我能够看到按钮列表。也不需要标题。
url = 'https://www.jdsports.co.uk/product/black-nike-air-force-1-react-lv8-all-stars/16080098/'
page = requests.get(url)
soup = BeautifulSoup(page.text,"html.parser")
soup.findAll("button",{"class": "btn btn-default"})
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。