Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
4.8k views
in Technique[技术] by (71.8m points)

为什么这个爬虫一直412

https://www.12309.gov.cn/gj/s...

就是这个网址

cookie ,header 代理 ,selenium 能用的方法全都用了,全都是 412 ,有没有大佬点拨一下

有哥们让我贴代码,我寻思这也要贴代码? 讲道理,能实现的话,自己写一下也就1分钟的事情。

问题的关键不是代码 而是卡在哪儿

10-23更新:
爬虫我也写几年了,最近集中写zf的爬虫,十几个,也就这个网站更新了之后不行才来专门提这个问题的,说cookie 或者验证肯定有什么不对的,我不知道? 这还要你讲? 我上面说了,你有本事你自己试一下,把运行成功的截图贴上来,(这就是一个详情页,也没有什么复杂业务,你要能实现不会浪费超过你10分钟)把我卡在哪儿甩我脸上,我佩服你。

虽然我上面说了我试的方法,你还是可以说我伸手,但是你别想当然,随便就来指点两句,谁不知道肯定有哪儿卡了一下验证呢。 你倒是自己试试啊

代码:

headers_detail = {
    'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36',
    "Host": "www.12309.gov.cn",
    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9",
    "Accept-Encoding": "gzip, deflate, br",
    "Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8,la;q=0.7,zh-TW;q=0.6,lb;q=0.5",
    "Connection": "keep-alive",
    "Referer": "https://www.12309.gov.cn/12309/gj/gs/lns/lnswdq/zjxflws/202007/t20200701_8235128.shtml",
}

r1 = requests.get(i["url"], headers=headers_detail, proxies=proxies2)

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

先给你个思路。

首先你要想着,HTTP就是基于TCP的文本协议。既然浏览器可以请求成功,那么代码肯定能模拟。


image.png

如图,多请求几次,然后对比一下请求头,看看有啥差别。


请求头只需要传Cookie,并且Cookie只需要传LY7d0mAljbsBOLY7d0mAljbsBP即可。LY7d0mAljbsBO是固定的,LY7d0mAljbsBP是有时效性的。

我既然这么说,肯定是验证过的。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...