爬取一个医药电商网站,爬取几页后,就不能获取到数据,后面发现只要把参数里的token手动更新一下,就又可以继续爬取,但过段时间又不能获取了,重复往返,很是烦人
代码缩减如下,异步获取第100类,供应商编号为2447,页码为1的商品数据
url = 'https://dian.ysbang.cn/wholesale-drug/sales/getWholesaleList/v4270'
ysb_cookies = {"__guid": "140493094.3233647003393036000.1603696496870.0378", "Token": "a8e89ec3b1174c72ada65a5ca1b63470"}
headers = { "User-Agent": "Mozilla/5.0(WindowsNT10.0;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/86.0.4240.198Safari/537.36"}
param = {'classify_id': 100, 'pagesize': '60', 'page': 1, 'provider_id': 2447, 'token': 'a8e89ec3b1174c72ada65a5ca1b63470'}
res = requests.post(url, headers=headers, cookies=ysb_cookies, data=json.dumps(param), timeout=10)
res.raise_for_status()
res.encoding = res.apparent_encoding
root_data = res.json()['data']
raw_datas = root_data['wholesales']
关于自动获取token,本人通过requests自动登录来获取cookies试过了,提示要手机短信验证码
所以如何能够自动获取token,或者能够得到找到计算token的逻辑,或者绕过token来获取数据呢