首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python请求,我得到了与postman的结果不同的响应状态。

python请求,我得到了与postman的结果不同的响应状态。
EN

Stack Overflow用户
提问于 2018-09-14 02:55:09
回答 1查看 858关注 0票数 2

请求: 2.19.1

python: 3.6

url(只是url,没有特殊意义):http://moneycake.tistory.com/43

Python代码(实际上是pycharm代码):

代码语言:javascript
复制
try:
    r = requests.head('http://moneycake.tistory.com/43', allow_redirects=False)
    print(r.status_code)
except requests.exceptions.RequestException as e:
    pass

它返回>>> 403

但当我在邮递员上使用GET方法和默认设置执行此操作时,

它返回200 OK

为什么会发生这种事?

我如何才能得到200 OK状态的响应?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-14 03:00:49

您需要设置用户代理:

代码语言:javascript
复制
import requests

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'
}

try:
    r = requests.head('http://moneycake.tistory.com/43', allow_redirects=False, headers=headers)
    print(r.status_code)
except requests.exceptions.RequestException as e:
    pass

输出

代码语言:javascript
复制
200
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52324350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档