搜狗微信的抓取总结

您所在的位置:网站首页 微信搜狗文章搜索 搜狗微信的抓取总结

搜狗微信的抓取总结

2023-07-14 05:10| 来源: 网络整理| 查看: 265

最近抓取了搜狗微信的数据,虽然也破解了跳转之类的,但是最后因为抓取的链接有时效性放弃了,也总结下

目标网站   https://weixin.sogou.com/

一样的,输入关键词,抓取列表,再回去跳转后的微信链接

前10页是可以随便看的,也不需要登录,10页之后的数据需要微信扫码登录,这一块没法破解

链接参数很多最后可以精简为

https://weixin.sogou.com/weixin?query=烽火&page=11&type=2

page就是页码,query就是关键字,type 是搜索文章还是搜索公众号

获取真实链接

其实很简单的代码,先要在url后面构造出 k 和 h,转化为 java 代码就是

// 拼接搜狗跳转参数k和h public static String getLinkUrl(String url) { int b = ((int) Math.floor(100 * Math.random())) + 1; int a = url.indexOf("url="); int k = a + 4 + 21 + b; String d = url.substring(k, k + 1); System.out.println(d); url += "&k=" + b + "&h=" + d; return "https://weixin.sogou.com" + url; }

有参数的链接直接请求是会出验证码的,需要cookie,需要的cookie只要是两个 一个是 SUV,一个是 SNUID,这两个cookie获取都很简单,通过分析可以得到

1.SUV 是可以通过访问 https://pb.sogou.com/pv.gif 来获取到

2.SNUID 在搜索的时候就会有了

所以我们加上这两个cookie就能获取到具体的微信的链接了

剩下的就是把这个链接取出来就行啦

后记

虽然还有很多细节没有完善,但是最坑的是最后的微信链接是有时效性的

太坑了,市面上有将有时效的链接转换为没有时效的链接的商业服务,不知道是他们是怎么实现的。目前在看微信客户端里面的搜一搜,因为通过客户端的搜一搜搜出来的链接是短短的,应该是失效很长的

2020-06-04 更新

找到了转换永久链接的办法,把有时效性的链接复制到微信客户端里面,不管是过没过期的链接都是能够打开的,再把链接复制出来就是永久的链接了,使用了 python pyautogui 来操作的,很简单,也很low,速度不快,就不放代码了。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3