为了账号安全,请及时绑定邮箱和手机立即绑定

Python 请求错误 400 浏览器发送了无效请求

Python 请求错误 400 浏览器发送了无效请求

小怪兽爱吃肉 2022-10-06 16:56:12
我在网络爬虫/抓取方面的知识非常有限,并且正在尝试为此创建一个网络爬虫URL。但是,当我尝试从服务器通常打印响应文本时,我得到了这个:<html><body><h1>400 Bad request</h1>Your browser sent an invalid request.</body></html>我认为代码没有任何问题,因为它可以在我尝试过的其他网站上运行。希望这里的好人能帮我解决这个问题。这只是一种预感,但这是否是由 url 不以 a 结尾引起的.xml?import requestsurl = 'https://phys.org/rss-feed/'res = requests.get(url)print(res.text[:500])
查看完整描述

1 回答

?
慕村9548890

TA贡献1884条经验 获得超4个赞

尝试使用BeautifulSoup和标头来掩盖您的请求,就像一个真实的请求一样:


import requests,lxml

from bs4 import BeautifulSoup

URL='https://phys.org/rss-feed/'

USER_AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:65.0) Gecko/20100101 Firefox/65.0"

headers = {"user-agent": USER_AGENT}

resp = requests.get(URL, headers=headers)

soup = BeautifulSoup(resp.content, "lxml")

print(soup)

仅屏蔽也有效:


import requests

URL='https://phys.org/rss-feed/'

USER_AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:65.0) Gecko/20100101 Firefox/65.0"

headers = {"user-agent": USER_AGENT}

resp = requests.get(URL, headers=headers)


查看完整回答
反对 回复 2022-10-06
  • 1 回答
  • 0 关注
  • 60 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信