赞
踩
参考评论大佬的公众号文章,了解到原来是ja3指纹检测,确实是没想到,get了新知识点
这题其实看了半天没发现到底检测了什么东西,死活没法获取真实的响应数据,直到尝试了一个半作弊方式,虽然最后还是没搞明白检测远离,但好歹能得出结果了不是,这里就分享下这个间接解决问题法,如果有大佬看到了希望指点下迷津,这题到底怎么检测的…
这个方法主要是使用了Json在线解析格式化工具网站的http模拟请求工具,跟自己模拟请求的区别是,这里是网站帮你请求,也没输入什么特别的请求头,很顺利的拿到了响应结果,这也说明这题检测的肯定不是请求头内容。

观察一下上面网站请求的构造,用curl转换一下,得到模拟请求代码
url = "http://www.jsons.cn/httpurl/" data = { "txt_url": "https://match.yuanrenxue.com/api/match/19?page=1", "txt_httptype": "GET", "txt_code": "", "txt_httpver": "0", "txt_outtime": "15", "txt_contype": "text/html", "txt_host": "", "txt_useragent": "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)", "txt_setuseragent": "yuanrenxue.project", "txt_referer": "", "txt_dlip": "", "txt_header": "", "txt_postdata": "", "txt_cookie": "" } res = client.post(url, data=data).text da=re.findall('placeholder="此处为请求得到的完整内容">(.*?)</textarea>',res)[0] print(da)
返回结果类似下面这样:
{"status": "1", "state": "success", "data": [{"value": 7396}, {"value": 5018}, {"value": 9546}, {"value": 4476}, {"value": 5297}, {"value": 880}, {"value": 4644}, {"value": 5918}, {"value": 3853}, {"value": 1572}]}
哎,即使是用上面这种第三方网站模拟请求,依然拿不到最后两页的数据,不知道为什么,是我太菜了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。