为什么python请求抛出这个BadStatusLine异常

2024-03-29 13:07:04 发布

您现在位置:Python中文网/ 问答频道 /正文

在python中,如果导入请求并执行以下操作:

t = requests.get("http://www.azlyrics.com/u/urban.html")

我有个例外:

raise BadStatusLine(line)
http.client.BadStatusLine: ''

有人知道怎么解决这个问题吗?


Tags: comclienthttpgethtmlwwwlinerequests
1条回答
网友
1楼 · 发布于 2024-03-29 13:07:04

可以有differentreasonsfor this kind of error,但在这种特殊情况下,这看起来像是一个简单的web抓取检测-它可以通过提供一个假装为真正的浏览器的用户代理头来解决:

In [2]: requests.get("http://www.azlyrics.com/u/urban.html")
...
ConnectionError: ('Connection aborted.', BadStatusLine("''",))

In [3]: requests.get("http://www.azlyrics.com/u/urban.html", headers={'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36'})
Out[3]: <Response [200]>

相关问题 更多 >