分享:微博数据采集工具Weisper与智动博客助手下载评论软件详情对比

优采云 发布时间: 2022-11-22 11:37

  分享:微博数据采集工具Weisper与智动博客助手下载评论软件详情对比

  

" />

  微博采集

工具Weisper是一款帮助用户采集

微博和粉丝信息的工具。该工具可以模拟人的操作,将网站显示的信息采集

到工具中。采集

的信息包括收录

关键词的微博,还可以采集

所有微博、粉丝信息、微博评论、微博账号的微博转发。从2014年开始,林工坊团队就为中小企业提供企业版微博数据采集工具Weisper。为了让更多用户领略到Weisper的魅力,林工坊团队根据个人用户的特点对Weisper企业版进行了修改,免费向个人用户发布。修改后的 Weisper 具有以下特点: 跨平台运行:它可以在 Windows 和 Linux 上运行;界面友好:用户无需任何计算机知识,点击菜单即可完成工具设置;免安装:解压后即可运行,无需安装数据库等;全部免费:免费使用,免费支持!该工具的主要功能如下:根据用户设置的关键词,是否原创,微博所在位置,日期等条件,搜索收录

该关键词的微博正文,微博名称发微博的用户,微博的采集

和转发,评论,点赞,捕获微博所有评论内容和评论者。根据用户输入的微博账号,抓取该账号粉丝的所有信息(年龄、性别、所在地、关注人数、粉丝数、发微博数、是否验证、成绩信息、*敏*感*词*、*敏*感*词*等);根据用户输入的品牌账号,抓取该账号的所有品牌信息。与其他工具相比,Weisper 的优势在于: 易用性:用户一上网就可以使用该工具,不需要懂HTML语言、数据库、循环等知识。运行稳定:软件经过多次升级优化,经过上千用户的验证。该软件已经能够在无人监督的情况下连续运行超过 72 小时。跳过验证码:软件采用独特的技术,让用户可以不输入验证码,或者说尽量少输入验证码。虚拟IP功能:软件可根据需要提供虚拟IP,使软件可以在不被微博平台锁定的情况下继续采集数据。断点运行:软件因网络、电脑等意外中断后,能保持中断时的状态,待问题解决后从断点处继续运行。双语支持:软件支持中英文双语。

  

" />

  分享文章:【文章转载】- 微信小程序域名收集工具

  通过微信小程序接口采集

目标单位域名,学习。

  原文链接:奇安信攻防社区-微信小程序域名采集

工具开发

  /分享/890

  请复制原创

代码。

  一个晴天的中午,突然收到上级发来的漏洞清单。估计是外面的高手干的。经过多次检测,发现该域名是群下一个平台小程序的域名。,而且漏洞也很简单,就是一个springboot的接口泄露,关键是这个小程序平时并不起眼,也没有渗透到我们,却突然来了,让我们措手不及,所以我想,通常,挖坑的时候,还是从小程序入手比较好,细节方面比web端容易做的多,所以为了以后快速拿下小程序,域名的采集

就变得很重要了,所以下面探索采集工具的开发。

  1.卖淫法

  一开始还是想找直接在git或者其他地方采集

域名的工具。找了一会发现雷神中策的一位高手写了域名的收款方法和脚本。可以去网上搜一下微信 可以看到大师的讲法在小程序找神器里讲的还是很不错的。我觉得这么快就解决了我想要的事情就好了。

  /attack_forum/2021/11/attach-a1191c2569b2e1c193073bab5de3ff69c0ed755e.jpg

  于是在网上下载了高手的脚本进行分析,发现运行不了,下面分析下为什么运行不了。

  二、追根究底

  有问题的接口是这个接口:/mp/waverifyinfo 根据雷神公测员的分析,这个接口下的request_domain_list应该不为空,但是我实际抓包看到返回值确实是空的,domain我想要的名字不存在。在里面,它让我恶心。

  /attack_forum/2021/11/attach-fb170f844bbae6f41ecfc5ffe1161f824f76a246.jpg

  3.向上帝祈祷

  这个问题我研究了好久还是没研究出来,所以使出我的绝招,找高手,在各个论坛问,终于在某个论坛找到了我想要的答案,因为调用接口发生了。已经改好了,现在如果要获取域名,需要调用这个接口:/wxawap/waverifyinfo

  /attack_forum/2021/11/attach-5ec7b1a9f2a1681d138cb3c23d6ab77b8fde6196.png

  雷神中测大师写了2段代码,让大家更详细的了解查询APP_ID和通过APP_ID查询小程序域名的思路。作为用户还是希望自己优化一下,于是开始修改代码进行改造,将两段代码合二为一,然后增加几个功能,大致如下:黑名单功能,查询功能,批量导出功能,其中下面将一一介绍。

  1.黑名单功能

  ​

1. `话不多说先贴代码,其实还是很简单,这里我做了个黑名单列表,研究发现以下2个域名后缀在跑除了某讯和政府(这个大家还是一直屏蔽了好)的网站还是能跑出来,然后将之前跑出的域名放进来过滤一下,大家可以自行判断屏蔽哪些域名,向black_domain_list中添加就行。`

1. `def black_domain_filter(res_domain_list):`

2. `black_domain_list = ['qq.com','gov.cn']`

3. `real_domian_list = []`

4. `for res in res_domain_list:`

5. `flag = 0`

6. `for bl in black_domain_list:`

7. `if bl in res:`

8. `flag = 1`

10. `if flag == 0:`

11. `real_domian_list.append(res)`

13. `return real_domian_list`

  2.导出查询功能

  ​

1. `相信大家还是希望能手动直接导出文件然后开始跑起来吧。。。这里我导出了2个文件,一个为批量测试用的,一个为查询使用的。`

1. `def write_domain_list(query,all_domain_list,all_domain_list2):`

2. `t = time.strftime("%Y-%m-%d-%H-%M-%S", time.localtime())`

3. `with open(query + '批量用'+ t + '.txt', 'w+', encoding='utf-8') as f:`

4. `for l in set(all_domain_list):`

5. `f.writelines(l+'\n')`

7. `with open(query + '查询用'+ t + '.txt', 'w+', encoding='utf-8') as f:`

8. `f.writelines('如果想查询某个域名属于哪个小程序,请访问地址:https://mp.weixin.qq.com/wxawap/waverifyinfo?action=get&appid=加上域名列表前的APPID即可')`

9. `for l in all_domain_list2:`

10. `str1 = ''`

11. `for i in l:`

12. `str1 =str1+i+','`

13. `f.writelines(str1+'\n')`

  3、完整代码如下:

  ​

1. `#!/usr/bin/env python`

2. `# -*- encoding: utf-8 -*-`

<p>

3. `# time:2021/11/11`

4. `# author:Soufaker`

6. `import requests`

7. `import json`

8. `import sys`

9. `import time`

11. `# 获取APP_ID列表`

12. `def Get_App_Id_List(query,number,cookie):`

13. `headers={"User-Agent" : "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36 NetType/WIFI MicroMessenger/7.0.20.1781(0x6700143B) WindowsWechat(0x63030073)"}`

14. `url = "https://mp.weixin.qq.com/wxa-cgi/innersearch/subsearch"`

15. `params = "query=" + query + "&amp;cookie=" + cookie + &#39;&amp;subsys_type=1&amp;offset_buf= {"page_param":[{"subsys_type":1,"server_offset":0,"server_limit":&#39; + str(number) + &#39;,"index_step":&#39; + str(number) + &#39;,"index_offset":0}],"client_offset":0,"client_limit":&#39; + str(number) + &#39;}&#39;`

16. `response = requests.post(url=url, params=params, headers=headers, timeout=10).text`

17. `Apps_Json = json.loads(response)`

18. `print(Apps_Json)`

19. `try:`

20. `App_Items = Apps_Json[&#39;respBody&#39;][&#39;items&#39;]`

21. `for App_Item in App_Items:`

22. `App_Item_Json = json.loads(json.dumps(App_Item)) # 重新加载嵌套内容中的json数据`

23. `App_Id = App_Item_Json[&#39;appid&#39;]`

24. `App_Name = App_Item_Json[&#39;nickName&#39;]`

26. `if query in App_Name:`

27. `App_Id_List.append(App_Id)`

28. `print(App_Name)`

29. `except:`

30. `print(&#39;连接异常&#39;)`

32. `# 获取小程序域名`

33. `def Get_Domain(X_APP_ID):`

34. `headers={ "User-Agent": "Mozilla/5.0 (Linux; Android 6.0.1; MuMu Build/V417IR; wv)" } #微信两个校验值`

35. `url = "https://mp.weixin.qq.com/wxawap/waverifyinfo?"`

36. `params = "action=get&amp;wx_header=1&amp;appid=" + X_APP_ID`

37. `response = requests.get(url=url, params=params, headers=headers).text`

38. `resp = response.replace(&#39; &#39;, &#39;&#39;).replace(&#39;\n&#39;, &#39;&#39;).replace(&#39;\t&#39;, &#39;&#39;).replace("\"", "")`

39. `try:`

40. `if "request_domain:{item:[" in resp:`

41. `Response_domain_list = Get_MiddleStr(resp,"request_domain:{item:[",",]}};

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线