继前不久升级反爬策略以后,又来了一次打升级,躺枪一片,非登陆情况下,新的策略使用了服务端生成验证串的方式,要破解很难,除非能破解加密算法了。大家有什么研究?
|  |      1pc10201      2015-10-10 13:13:35 +08:00 用浏览器模拟,加大量代理 IP | 
|      2macroideal      2015-10-10 13:17:46 +08:00 道高一尺, 魔高一丈 | 
|  |      4ljcarsenal      2015-10-10 13:53:34 +08:00 via Android 为什么都要做微信相关的爬取呢 | 
|      5skip11      2015-10-10 13:53:52 +08:00 1.登录 2.模拟浏览器获取那个串 我也是昨天才发现临时更新的算法 | 
|  |      6macken OP @ljcarsenal 好玩 | 
|  |      8sohoer      2015-10-10 13:58:40 +08:00 我不知道是不是通过搜狗抓取,如果是那就是 ext 这个参数,这个参数会失效需要隔段时间获取一次 | 
|      9skip11      2015-10-10 14:00:35 +08:00 @macken 我有几天没看了,我是自己抓过来离线读,具体什么时候更新的不是很清楚,@sohoer,楼主应该说的就是 ext ,失效模拟一下就好了,目前还不难,不知道搜狗后续会更新什么手段 | 
|  |      10Moker      2015-10-10 14:02:31 +08:00 前端时间就不行了 加代理 IP 和降低频率 目前估计只能这样 | 
|  |      12johnsneakers      2015-10-10 15:38:31 +08:00 现在就是一个 302 而已,你多请求一次拿到 302 的地址就可以了 | 
|  |      13johnsneakers      2015-10-10 15:41:14 +08:00 (PHP 版本)粘贴即可看到效果: $url = "http://weixin.sogou.com/websearch/art.jsp?sg=CBf80b2xkgbhjl0x-hNnSEuCKYJJPsg_h-OjrOxHjU_vFtJfSKnjpz19wNWA5ILUTtJveGGSfLC6VBIRlwc6srq5lrLZ5gXykqfIRjtZWiJm_nQjhF6DEb6_H-c9J_ZynM4JG0XEf_vu4a6BXqY6ow..&url=p0OVDH8R4SHyUySb8E88hkJm8GF_McJfBfynRTbN8wisH87qPWS2UFAFG9qAbOBeXY6RLCSg2kRDYt5ROwiYPFLvkvBrfA0sgKbswv_WSNpL5BYLq2cVN2huY78d2DfqLtelzlOATJZYy-5x5In7jJFmExjqCxhpkyjFvwP6PuGcQ64lGQ2ZDMuqxplQrsbk"; echo sogou_weixin($url); function sogou_weixin($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); $data = curl_exec($ch); $Headers = curl_getinfo($ch); curl_close($ch); if ($data != $Headers) return $Headers["url"]; else return false; } | 
|  |      14macken OP @johnsneakers 恩,这是上一次升级后出现的问题,这次升级增加了 ext 验证 | 
|      15fishlee      2015-10-10 17:18:57 +08:00 via Android 还没试过这方法,有空搞搞看 | 
|  |      16johnsneakers      2015-10-10 18:10:02 +08:00  1 @macken  我刚试了,是可以的 | 
|  |      17macken OP @johnsneakers 这种方式是可以拿到最终的文章 url 的,我遇到的问题是直接访问 http://weixin.sogou.com/gzh?openid=oIWsFtzDjnBIlyxXFCgp7hAApCeM 是无法访问的,必须是这种方式才可以访问 http://weixin.sogou.com/gzh?openid=oIWsFtzDjnBIlyxXFCgp7hAApCeM&ext=Uc8g8yaxQpH6htELFQfGDr3PzTLZg-34eXRrntsODlbP32F_9hAQlNM8VKlUG_IA url 里面的 ext 是刚加的验证机制 | 
|  |      18yepinf      2015-10-10 21:42:51 +08:00 之前用 qwebkit 爬,一直很稳定 换工作之后,就没继续做下去了 | 
|  |      19icedx      2015-10-10 21:43:27 +08:00 搜狗微信 是啥? | 
|  |      20blue7wings      2015-10-11 10:39:52 +08:00 我在想, sogou 的微信数据是官方给的嘛。。。 | 
|  |      22macken OP @blue7wings 应该是的 腾讯也投资搜狗了 | 
|  |      23macken OP  1 | 
|  |      25cai314494687      2015-10-12 21:56:05 +08:00 @johnsneakers 提示:当前请求已过期,请点击重新加载 是什么回事? | 
|  |      26johnsneakers      2015-10-13 09:55:34 +08:00 @cai314494687 url 地址换一个就好 | 
|  |      27cai314494687      2015-10-13 10:01:47 +08:00 | 
|  |      28johnsneakers      2015-10-13 10:56:06 +08:00 @cai314494687 哦,我和你不一样。 我爬的是搜索页, 取搜索结果列表里面的 url | 
|      30bowbright      2015-11-15 16:52:08 +08:00 @johnsneakers 实验了你的代码,取到的 data 好像现在不对了。 <html> <head><title>400 Bad Request</title></head> <body bgcolor="white"> <center><h1>400 Bad Request</h1></center> <hr><center>nginx</center> </body> </html> | 
|      31g080166      2016-01-11 15:46:31 +08:00 请问这个问题后来有解决方案了吗? | 
|      32g080166      2016-01-11 15:47:10 +08:00 搜狗一旦弄得多了,就让我输入验证码,已经被搞疯了,想问下有好心人提供下解决方案吗? |