python爬取微信小程序数据,python爬取小程序数据

这篇具有很好参考价值的文章主要介绍了python爬取微信小程序数据,python爬取小程序数据。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

大家好,小编来为大家解答以下问题,python爬取微信小程序数据,python爬取小程序数据,现在让我们一起来看看吧!

python爬取微信小程序数据,python爬取小程序数据,人工智能

一、前言

最近需要获取微信小程序上的数据进行分析处理,第一时间想到的方式就是采用python爬虫爬取数据,尝试后发现诸多问题,比如无法获取目标网址、解析网址中存在指定参数的不确定性、加密问题等等,经过一番尝试,终于使用 Charles 抓取到指定微信小程序中的数据,本文进行记录并总结。

环境配置:

电脑:Windows10,连接有线网

手机:iPhone Xr,连接无线网

注:有线网与无线网最好位于同一网段下学python什么书比较好。

本文有线网网址:192.168.131.24,无线网网址:192.168.210.223

二、Charles配置与使用

1.Charles简介

Charles,一个HTTP代理服务器,HTTP监视器,反转代理服务器,当程序连接Charles的代理访问互联网时,Charles可以监控这个程序发送和接收的所有数据。它允许一个开发者查看所有连接互联网的HTTP通信,这些包括request, response和HTTP headers (包含cookies与caching信息)。

Charles主要功能:

1. 支持SSL代理。可以截取分析SSL的请求。

2. 支持流量控制。可以模拟慢速网络以及等待时间(latency)较长的请求。

3. 支持AJAX调试。可以自动将json或xml数据格式化,方便查看。

4. 支持AMF调试。可以将Flash Remoting 或 Flex Remoting信息格式化,方便查看。

5. 支持重发网络请求,方便后端调试。

6. 支持修改网络请求参数。

7. 支持网络请求的截获并动态修改。

8. 检查HTML,CSS和RSS内容是否符合W3C标准。

----百度百科

Charles,著名的抓包工具,可以抓取移动端与pc端网络访问的所有数据,操作简单,试用期后每30分钟需要重启一次,且启动有10秒延迟,较麻烦。

python爬取微信小程序数据,python爬取小程序数据,人工智能

2.Charles安装

Charles官网下载:https://www.charlesproxy.com/download/ 

python爬取微信小程序数据,python爬取小程序数据,人工智能

下载对应版本后完成安装。

3.证书配置(重要!)

Charles安装证书:

Help -> SSL Proxying -> Install Charles Root Certificate

python爬取微信小程序数据,python爬取小程序数据,人工智能

在Windows端需要安装Charles证书,点击后如图所示(此为安装成功后截图):

python爬取微信小程序数据,python爬取小程序数据,人工智能

点击安装证书,

python爬取微信小程序数据,python爬取小程序数据,人工智能

点击下一步,

python爬取微信小程序数据,python爬取小程序数据,人工智能

在此选择第二个,将所有证书都放入下列存储,点击浏览,选择受信任的根证书颁发机构。

python爬取微信小程序数据,python爬取小程序数据,人工智能

确定后下一步。

python爬取微信小程序数据,python爬取小程序数据,人工智能

点击完成后提示导入成功。此时需要重新进入Help -> SSL Proxying -> Install Charles Root Certificate,查看证书结果,成功时如下提示:

python爬取微信小程序数据,python爬取小程序数据,人工智能

移动端安装证书(重要!)

移动端同样也需要安装Charles证书,具体操作如下:

python爬取微信小程序数据,python爬取小程序数据,人工智能

选择在移动端安装证书选项,Charles提示如下:

python爬取微信小程序数据,python爬取小程序数据,人工智能

提示需要设置手机http代理为192.168.209.172,端口为8889,然后在手机浏览器上访问 chls.pro/ssl 下载安装证书。如果IOS 版本在10以上,必须在设置->通用->关于本机->证书信任设置中打开对根证书启用完全信任。

注:

192.168.209.172,端口为8889的设置是我笔记本电脑上的设置,由于当时没来得及记录操作与截图,后续又在台式机上面进行了复现操作,在台式机上使用的设置为IP:192.168.131.24,端口为8888。

故后续的操作截图与这里Charles提示的IP和端口不一致,但不影响后续流程,以Charles提示的为准!特此说明一下。

接下来逐一操作如下:

1. 手机上打开无线局域网链接,选择链接的无线网信息页如下:

        python爬取微信小程序数据,python爬取小程序数据,人工智能

2. 在http代理中选择手动,添加Charles提示的http代理:192.168.131.24,端口为8888,选择存储。

         python爬取微信小程序数据,python爬取小程序数据,人工智能

3. 手机上设置->通用->关于本机->证书信任设置,打开右边按钮,开启完全信任。

         python爬取微信小程序数据,python爬取小程序数据,人工智能

注:手机设置完成后若无法上网,极有可能是ios版本过高并没有开启对证书的 完全信任、完全信任、完全信任 导致!!!

手机正确连接后,Charles会弹框类似如下,说明连接成功。(图中IP地址为另一个测试机)

python爬取微信小程序数据,python爬取小程序数据,人工智能

浏览器端配置

谷歌与火狐浏览器默认并不使用系统的代理服务器设置,而 Charles 是通过将自己设置成代理服务器来完成封包截取的,所以在默认情况下无法截取 Chrome 和 Firefox 浏览器的网络通讯内容。如果你需要截取的话,在 Chrome 中设置成使用系统的代理服务器设置即可,或者直接将代理服务器设置成 127.0.0.1:8888 也可达到相同效果。

至此,证书的相关三点设置完毕。

4.Charles配置

取消Windows代理

由于此次目标是抓取移动端微信小程序中的数据,取消此选项是尽量减少无关的数据量。

python爬取微信小程序数据,python爬取小程序数据,人工智能

查看本机IP地址与配置相关端口号

默认端口号是8888,可以修改。

Help -> Local ip Address :

python爬取微信小程序数据,python爬取小程序数据,人工智能

Proxy -> Proxy Settings :

python爬取微信小程序数据,python爬取小程序数据,人工智能

ssl代理设置

安装完成ssl证书后,需要在Charles中开启ssl代理设置,在Proxy->SSL Proxying Settings中,勾选Enable SSL Proxying,

python爬取微信小程序数据,python爬取小程序数据,人工智能

点击add,新增访问的目标地址,根据提示,空的host与port匹配所有的值,可以使用*与?进行匹配,此处host与port均填写*。

python爬取微信小程序数据,python爬取小程序数据,人工智能

至此,Charles相关的配置完毕。

三、Charles数据抓取

手机与Charles均配置成功后,打开微信小程序,此时Charles会自动获取http与https访问,如下:

python爬取微信小程序数据,python爬取小程序数据,人工智能

点击左边解析的链接,选择Contents,JSON Text,可以看到解析出来的微信小程序数据内容。

在Overview中,可以看到访问的url地址为:

https://nujump.tigerobo.com/HB_Jumper/ztjump.ashx?topic=8&aris_data=kcb_1_announced_corp&pageIndex=1&pageSize=5

主要参数为pageIndex与pageSize,即页面索引与当页显示的数据量,在浏览器中访问该url,可以看到返回的结果为json格式的数据:

python爬取微信小程序数据,python爬取小程序数据,人工智能

其实,当通过Charles解析出url链接时,即可通过python爬虫爬取接口返回的数据了,不涉及反爬虫等问题,非常方便。

四、问题集锦

1.网络问题:

网传手机与电脑链接的网段必须相同,但是也有不一致的说法,本文测试时,无线网与有线网是处在同一网段下。

2. 手机或电脑无法联网:

证书问题:证书未能正确安装,查看手机上是否始终信任证书!(多数情况下如此);电脑上查看证书是否安装在受信任的位置,浏览器中的证书是否正确添加。

防火墙问题:关闭Windows10的防火墙,取消阻止传入连接。

python爬取微信小程序数据,python爬取小程序数据,人工智能

其他问题:网传Charles开启了White list,但测试时并未发现。

参考:Charles设置代理后,手机无法上网 - 简书

3.https加密的链接显示unknow

此问题遇到的可能性最大,导致的原因很多,

最有可能的原因在于证书的问题,证书未能正确安装,查看手机上是否始终信任证书!!(多数情况下如此,注意iOS版本问题,过高需要始终信任此证书);电脑上查看证书是否安装在受信任的位置。

参考:滑动验证页面

五、参考链接

https://www.jianshu.com/p/993bc794138d

charles抓取微信小程序数据(抓取http和https数据)_使用charles进行小程序抓包https-CSDN博客

六、补充

目前来说,采用Charles抓取移动端微信小程序数据应该是比较容易的,就是配置过程与安装证书较为繁琐。

除此之外,网传另外一种方式,使用TBS爬取微信小程序,本人尝试后始终未能正确爬取数据,如哪位大神操作正确,抓取数据顺利,还望告知,不胜感激!

TBS爬取微信小程序参考连接如下:

https://my.oschina.net/sumiao/blog/1587350?utm_source=debugrun&utm_medium=referral文章来源地址https://www.toymoban.com/news/detail-763499.html

一、前言

最近需要获取微信小程序上的数据进行分析处理,第一时间想到的方式就是采用python爬虫爬取数据,尝试后发现诸多问题,比如无法获取目标网址、解析网址中存在指定参数的不确定性、加密问题等等,经过一番尝试,终于使用 Charles 抓取到指定微信小程序中的数据,本文进行记录并总结。

环境配置:

电脑:Windows10,连接有线网

手机:iPhone Xr,连接无线网

注:有线网与无线网最好位于同一网段下学python什么书比较好。

本文有线网网址:192.168.131.24,无线网网址:192.168.210.223

二、Charles配置与使用

1.Charles简介

Charles,一个HTTP代理服务器,HTTP监视器,反转代理服务器,当程序连接Charles的代理访问互联网时,Charles可以监控这个程序发送和接收的所有数据。它允许一个开发者查看所有连接互联网的HTTP通信,这些包括request, response和HTTP headers (包含cookies与caching信息)。

Charles主要功能:

1. 支持SSL代理。可以截取分析SSL的请求。

2. 支持流量控制。可以模拟慢速网络以及等待时间(latency)较长的请求。

3. 支持AJAX调试。可以自动将json或xml数据格式化,方便查看。

4. 支持AMF调试。可以将Flash Remoting 或 Flex Remoting信息格式化,方便查看。

5. 支持重发网络请求,方便后端调试。

6. 支持修改网络请求参数。

7. 支持网络请求的截获并动态修改。

8. 检查HTML,CSS和RSS内容是否符合W3C标准。

----百度百科

Charles,著名的抓包工具,可以抓取移动端与pc端网络访问的所有数据,操作简单,试用期后每30分钟需要重启一次,且启动有10秒延迟,较麻烦。

python爬取微信小程序数据,python爬取小程序数据,人工智能

2.Charles安装

Charles官网下载:https://www.charlesproxy.com/download/ 

python爬取微信小程序数据,python爬取小程序数据,人工智能

下载对应版本后完成安装。

3.证书配置(重要!)

Charles安装证书:

Help -> SSL Proxying -> Install Charles Root Certificate

python爬取微信小程序数据,python爬取小程序数据,人工智能

在Windows端需要安装Charles证书,点击后如图所示(此为安装成功后截图):

python爬取微信小程序数据,python爬取小程序数据,人工智能

点击安装证书,

python爬取微信小程序数据,python爬取小程序数据,人工智能

点击下一步,

python爬取微信小程序数据,python爬取小程序数据,人工智能

在此选择第二个,将所有证书都放入下列存储,点击浏览,选择受信任的根证书颁发机构。

python爬取微信小程序数据,python爬取小程序数据,人工智能

确定后下一步。

python爬取微信小程序数据,python爬取小程序数据,人工智能

点击完成后提示导入成功。此时需要重新进入Help -> SSL Proxying -> Install Charles Root Certificate,查看证书结果,成功时如下提示:

python爬取微信小程序数据,python爬取小程序数据,人工智能

移动端安装证书(重要!)

移动端同样也需要安装Charles证书,具体操作如下:

python爬取微信小程序数据,python爬取小程序数据,人工智能

选择在移动端安装证书选项,Charles提示如下:

python爬取微信小程序数据,python爬取小程序数据,人工智能

提示需要设置手机http代理为192.168.209.172,端口为8889,然后在手机浏览器上访问 chls.pro/ssl 下载安装证书。如果IOS 版本在10以上,必须在设置->通用->关于本机->证书信任设置中打开对根证书启用完全信任。

注:

192.168.209.172,端口为8889的设置是我笔记本电脑上的设置,由于当时没来得及记录操作与截图,后续又在台式机上面进行了复现操作,在台式机上使用的设置为IP:192.168.131.24,端口为8888。

故后续的操作截图与这里Charles提示的IP和端口不一致,但不影响后续流程,以Charles提示的为准!特此说明一下。

接下来逐一操作如下:

1. 手机上打开无线局域网链接,选择链接的无线网信息页如下:

        python爬取微信小程序数据,python爬取小程序数据,人工智能

2. 在http代理中选择手动,添加Charles提示的http代理:192.168.131.24,端口为8888,选择存储。

         python爬取微信小程序数据,python爬取小程序数据,人工智能

3. 手机上设置->通用->关于本机->证书信任设置,打开右边按钮,开启完全信任。

         python爬取微信小程序数据,python爬取小程序数据,人工智能

注:手机设置完成后若无法上网,极有可能是ios版本过高并没有开启对证书的 完全信任、完全信任、完全信任 导致!!!

手机正确连接后,Charles会弹框类似如下,说明连接成功。(图中IP地址为另一个测试机)

python爬取微信小程序数据,python爬取小程序数据,人工智能

浏览器端配置

谷歌与火狐浏览器默认并不使用系统的代理服务器设置,而 Charles 是通过将自己设置成代理服务器来完成封包截取的,所以在默认情况下无法截取 Chrome 和 Firefox 浏览器的网络通讯内容。如果你需要截取的话,在 Chrome 中设置成使用系统的代理服务器设置即可,或者直接将代理服务器设置成 127.0.0.1:8888 也可达到相同效果。

至此,证书的相关三点设置完毕。

4.Charles配置

取消Windows代理

由于此次目标是抓取移动端微信小程序中的数据,取消此选项是尽量减少无关的数据量。

python爬取微信小程序数据,python爬取小程序数据,人工智能

查看本机IP地址与配置相关端口号

默认端口号是8888,可以修改。

Help -> Local ip Address :

python爬取微信小程序数据,python爬取小程序数据,人工智能

Proxy -> Proxy Settings :

python爬取微信小程序数据,python爬取小程序数据,人工智能

ssl代理设置

安装完成ssl证书后,需要在Charles中开启ssl代理设置,在Proxy->SSL Proxying Settings中,勾选Enable SSL Proxying,

python爬取微信小程序数据,python爬取小程序数据,人工智能

点击add,新增访问的目标地址,根据提示,空的host与port匹配所有的值,可以使用*与?进行匹配,此处host与port均填写*。

python爬取微信小程序数据,python爬取小程序数据,人工智能

至此,Charles相关的配置完毕。

三、Charles数据抓取

手机与Charles均配置成功后,打开微信小程序,此时Charles会自动获取http与https访问,如下:

python爬取微信小程序数据,python爬取小程序数据,人工智能

点击左边解析的链接,选择Contents,JSON Text,可以看到解析出来的微信小程序数据内容。

在Overview中,可以看到访问的url地址为:

https://nujump.tigerobo.com/HB_Jumper/ztjump.ashx?topic=8&aris_data=kcb_1_announced_corp&pageIndex=1&pageSize=5

主要参数为pageIndex与pageSize,即页面索引与当页显示的数据量,在浏览器中访问该url,可以看到返回的结果为json格式的数据:

python爬取微信小程序数据,python爬取小程序数据,人工智能

其实,当通过Charles解析出url链接时,即可通过python爬虫爬取接口返回的数据了,不涉及反爬虫等问题,非常方便。

四、问题集锦

1.网络问题:

网传手机与电脑链接的网段必须相同,但是也有不一致的说法,本文测试时,无线网与有线网是处在同一网段下。

2. 手机或电脑无法联网:

证书问题:证书未能正确安装,查看手机上是否始终信任证书!(多数情况下如此);电脑上查看证书是否安装在受信任的位置,浏览器中的证书是否正确添加。

防火墙问题:关闭Windows10的防火墙,取消阻止传入连接。

python爬取微信小程序数据,python爬取小程序数据,人工智能

其他问题:网传Charles开启了White list,但测试时并未发现。

参考:Charles设置代理后,手机无法上网 - 简书

3.https加密的链接显示unknow

此问题遇到的可能性最大,导致的原因很多,

最有可能的原因在于证书的问题,证书未能正确安装,查看手机上是否始终信任证书!!(多数情况下如此,注意iOS版本问题,过高需要始终信任此证书);电脑上查看证书是否安装在受信任的位置。

参考:滑动验证页面

五、参考链接

https://www.jianshu.com/p/993bc794138d

charles抓取微信小程序数据(抓取http和https数据)_使用charles进行小程序抓包https-CSDN博客

六、补充

目前来说,采用Charles抓取移动端微信小程序数据应该是比较容易的,就是配置过程与安装证书较为繁琐。

除此之外,网传另外一种方式,使用TBS爬取微信小程序,本人尝试后始终未能正确爬取数据,如哪位大神操作正确,抓取数据顺利,还望告知,不胜感激!

TBS爬取微信小程序参考连接如下:

https://my.oschina.net/sumiao/blog/1587350?utm_source=debugrun&utm_medium=referral

到了这里,关于python爬取微信小程序数据,python爬取小程序数据的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 六个步骤学会使用Python爬虫爬取数据(爬虫爬取微博实战)

    用python的爬虫爬取数据真的很简单,只要掌握这六步就好,也不复杂。以前还以为爬虫很难,结果一上手,从初学到把东西爬下来,一个小时都不到就解决了。 第一步:安装requests库和BeautifulSoup库 在程序中两个库的书写是这样的: 由于我使用的是pycharm进行的python编程。所以

    2024年02月08日
    浏览(60)
  • 【经典爬虫案例】用Python爬取微博热搜榜!

    目录 一、爬取目标 二、编写爬虫代码 2.1 前戏 2.2 获取cookie 2.3 请求页面 2.4 解析页面 2.5 转换热搜类别 2.6 保存结果 2.7 查看结果数据 三、获取完整源码 您好,我是@马哥python说,一名10年程序猿。 本次爬取的目标是: 微博热搜榜 ​ 分别爬取每条热搜的: 热搜标题、热搜排名

    2024年02月13日
    浏览(45)
  • 爬虫 | Python爬取微博实时热搜榜信息

    大家好,我是程序员晓晓~ 本期给大家分享一下如何 用python获取微博热搜榜 信息,包含 爬取时间、序号、、热度 等信息,希望对大家有所帮助。 所有内容仅供参考,不做他用。 1. 网页分析 目标网址(微博热搜榜): https://s.weibo.com/top/summary 实时热搜榜一共有50条,每个

    2024年02月02日
    浏览(59)
  • 爬取微博热搜榜并进行数据分析

    :爬取微博热搜榜数据。 用requests库访问页面用get方法获取页面资源,登录页面对页面HTML进行分析,用beautifulsoup库获取并提取自己所需要的信息。再讲数据保存到CSV文件中,进行数据清洗,数据可视化分析,绘制数据图表,并用最小二乘法进行拟合分析。 :通过观察页面HT

    2024年02月15日
    浏览(55)
  • 【爬虫实战】用python爬取微博任意关键词搜索结果、exe文件

    项目功能简介: 1.交互式配置; 2.两种任意来源(直接输入、本地文件); 3.自动翻页(无限爬取); 4.指定最大翻页页码; 5.数据保存到csv文件; 6.程序支持打包成exe文件; 7.项目操作说明文档; 一.最终效果 视频演示: 用python爬取微博搜索结果、exe文件

    2024年02月02日
    浏览(70)
  • 用python语言爬虫爬取微博评论--上--初步爬虫(超详细版,大学生不骗大学生)

    目录 一、找到页面  二、学会使用检查元素 2.1 打开检查元素界面 2.2 找到所有评论所在的位置 2.2.1 搜索评论 2.2.2  找到data表 三、基础部分代码实现 ​​​​​​​ 全部已经更完(下面两个链接是中和下) https://blog.csdn.net/m0_68325382/article/details/137234661?spm=1001.2014.3001.5502 爬

    2024年04月10日
    浏览(56)
  • PC端微信小程序使用Fiddler进行爬取抓包

    本博客用于个人学习与工作中的收获 前言 前两天被安排了一个没有接触过的爬取微信小程序中数据的任务,虽然我是连爬虫貌似都还没写过的实习仔,但是想着应该不难,那可不就信心满满地接下任务了。然后第一天,一整天都在查资料看python爬虫相关的东西,什么 urllib

    2024年01月17日
    浏览(44)
  • 微信小程序的人工智能模型部署(flask)

    目录 写在前面: 具体做法: 后端: 前端: 其他: 我使用的微信小程序开发工具是:“微信开发者工具”,当然你用其他的开发工具应该也差别不大; 人工智能模型用的是pytorch; 具体不介绍人工智能模型的保存,主要介绍一下flask的写法; 首先你要把人工智能模型先保存

    2024年02月15日
    浏览(100)
  • 微信小程序提交数据,python的django框架接收

    一、微信小程序部分,这里要注意:content-type的设置与后台接收的格式相关,在这里设置成application/x-www-form-urlencoded 二、python部分,这里用 json.loads方法加载整个 request.body,因为整个body就是一个json数据 原始数据是这样的:

    2024年02月12日
    浏览(41)
  • 使用selenium自动化工具爬取微博内容和评论

    任务需求是爬取微博的内容和评论。一开始我是准备直接用正常的爬虫来做,但是发现微博上的内容几乎都是动态加载生成的。所以了解了一下就学习使用·selenium自动化测试工具来爬取相关数据。 首先是不登录微博,发现只能查看最多二十条数据,这自然限制太大所以还是

    2024年02月02日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包