panghuahua2017 2022-05-08 02:03 采纳率: 57.1%
浏览 69
已结题

python 爬虫使用token无法登录

手动用浏览器登录目标网址后,
把响应数据里的token复制出来,
再复制到python的请求头里,
之后用python对某页面发起请求,
可以正常得到相应数据。


但是直接用python登录,获取到token后,

添加到请求头,
无法继续对后续的页面发起请求,响应代码500,
一般这是什么原因引起的呢?
该往哪个方向排查?


python登录和浏览器手动登录,
用的一模一样的请求头,
并且服务器响应的格式完全相同,
响应内容包括token看起来也没问题。

  • 写回答

6条回答 默认 最新

  • hyh123a 新星创作者: 编程框架技术领域 2022-05-08 07:50
    关注

    500的响应头 默认是服务器端错误,
    核对下面信息:

    • 请求头
    • Payload
    • 响应格式

    既然请求头 和 响应格式,你核对过了完全相同,那么就再核对下payload。
    如果还是不行,如下所示。


    其实如果你可以看到服务器端的输出日志的话,你可以看下500的具体报错是什么,
    这种一般是服务器端接口代码逻辑报错,比如有传输过来的数据类型异常或者其它异常处理没考虑到导致的。
    这样可以直接定位到具体的错误处,从而定位到具体的请求的错误原因


    可以用下面方式检查下
    1、下载POSTMAN,模拟请求,检查是否正确,如果模拟成功,进行下一步。
    2、POSTMAN支持输出为CODE,支持Python requests格式的导出,复制粘贴后可以直接运行。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(5条)

报告相同问题?

问题事件

  • 系统已结题 5月20日
  • 已采纳回答 5月12日
  • 创建了问题 5月8日