0%

白熊网盘

  • 这次分享的是关于某代理IP网站爬取所遇到的问题

  • 这网站是用国外服务器的网站,需要科学上网才能获取到数据,这里直接上分析:

  • 从这里面看.可以轻易分析出请求构造:

  • 经过请求测试,可以分离参数和说明如下:
key value 说明
page 1 页数
limit 10 页的数据多少限制

  • 然而直接浏览器访问时,是会出现json数据,但是当直接放在python中请求时,会出现状态码500错误.

  • 分析一下原因,可能是请求头没有加入最常见的User-Agentreferer后,但还是出现了如下错误:

  • 后来推测可能原因在Cookies那里,毕竟他没有请求参数或者其他的请求意向,极大可能在Cookies已经存储了验证信息了,打开Cookies存储单元,里面有很多数据,但是还不能判定哪个是验证信息.

  • 于是我在响应头里找到了一个可疑数据session,他是唯一一个在请求头和响应头里面同时存在的,所以我清空该值试试响应结果,果然是500状态码,确定了该请求数据的验证信息来自于session.

  • 解决方法:直接在请求头添加Cookies就可以解决问题

  • 解决部分代码:
    1
    2
    3
    4
    5
    self.headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36',
    'cookie': 'session=eyJfcGVybWFuZW50Ijp0cnVlLCJwYXRoIjoiL2dhb25pIn0.EMK4Jw.SVpjwvOHNYGzsnNj72LceRTBVa4',
    'referer': 'https://www.attackmen.com/gaoni'
    }

源代码

-------------本文结束感谢您的阅读-------------