电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Python爬取微信小程序Charles實現過程圖解

瀏覽:6日期:2022-07-09 15:22:45

一、前言

最近需要獲取微信小程序上的數據進行分析處理,第一時間想到的方式就是采用python爬蟲爬取數據,嘗試后發現諸多問題,比如無法獲取目標網址、解析網址中存在指定參數的不確定性、加密問題等等,經過一番嘗試,終于使用 Charles 抓取到指定微信小程序中的數據,本文進行記錄并總結。

環境配置:

電腦:Windows10,連接有線網

手機:iPhone Xr,連接無線網

注:有線網與無線網最好位于同一網段下。

本文有線網網址: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爬取微信小程序Charles實現過程圖解

2.Charles安裝

Charles官網下載:https://www.charlesproxy.com/download/

Python爬取微信小程序Charles實現過程圖解

下載對應版本后完成安裝。

3.證書配置(重要!) Charles安裝證書:

Help -> SSL Proxying -> Install Charles Root Certificate

Python爬取微信小程序Charles實現過程圖解

在Windows端需要安裝Charles證書,點擊后如圖所示(此為安裝成功后截圖):

Python爬取微信小程序Charles實現過程圖解

點擊安裝證書,

Python爬取微信小程序Charles實現過程圖解

點擊下一步,

Python爬取微信小程序Charles實現過程圖解

在此選擇第二個,將所有證書都放入下列存儲,點擊瀏覽,選擇受信任的根證書頒發機構。

Python爬取微信小程序Charles實現過程圖解

確定后下一步。

Python爬取微信小程序Charles實現過程圖解

點擊完成后提示導入成功。此時需要重新進入Help -> SSL Proxying -> Install Charles Root Certificate,查看證書結果,成功時如下提示:

Python爬取微信小程序Charles實現過程圖解

移動端安裝證書(重要!)

移動端同樣也需要安裝Charles證書,具體操作如下:

Python爬取微信小程序Charles實現過程圖解

選擇在移動端安裝證書選項,Charles提示如下:

Python爬取微信小程序Charles實現過程圖解

提示需要設置手機http代理為192.168.131.24,端口為8888,然后在手機瀏覽器上訪問 chls.pro/ssl 下載安裝證書。如果IOS 版本在10以上,必須在設置->通用->關于本機->證書信任設置中打開對根證書啟用完全信任。

接下來逐一操作如下:

1. 手機上打開無線局域網鏈接,選擇鏈接的無線網信息頁如下:

Python爬取微信小程序Charles實現過程圖解

2. 在http代理中選擇手動,添加Charles提示的http代理:192.168.1324,端口為8888,選擇存儲。

Python爬取微信小程序Charles實現過程圖解

3. 手機上設置->通用->關于本機->證書信任設置,打開右邊按鈕,開啟完全信任。

Python爬取微信小程序Charles實現過程圖解

注:手機設置完成后若無法上網,極有可能是ios版本過高并沒有開啟對證書的 完全信任、完全信任、完全信任 導致!!!

手機正確連接后,Charles會彈框類似如下,說明連接成功。(圖中IP地址為另一個測試機)

Python爬取微信小程序Charles實現過程圖解

瀏覽器端配置

谷歌與火狐瀏覽器默認并不使用系統的代理服務器設置,而 Charles 是通過將自己設置成代理服務器來完成封包截取的,所以在默認情況下無法截取 Chrome 和 Firefox 瀏覽器的網絡通訊內容。如果你需要截取的話,在 Chrome 中設置成使用系統的代理服務器設置即可,或者直接將代理服務器設置成 127.0.0.1:8888 也可達到相同效果。

至此,證書的相關三點設置完畢。

4.Charles配置 取消Windows代理

由于此次目標是抓取移動端微信小程序中的數據,取消此選項是盡量減少無關的數據量。

Python爬取微信小程序Charles實現過程圖解

查看本機IP地址與配置相關端口號

默認端口號是8888,可以修改。

Help -> Local ip Address :

Python爬取微信小程序Charles實現過程圖解

Proxy -> Proxy Settings :

Python爬取微信小程序Charles實現過程圖解

ssl代理設置

安裝完成ssl證書后,需要在Charles中開啟ssl代理設置,在Proxy->SSL Proxying Settings中,勾選Enable SSL Proxying,

Python爬取微信小程序Charles實現過程圖解

點擊add,新增訪問的目標地址,根據提示,空的host與port匹配所有的值,可以使用*與?進行匹配,此處host與port均填寫*。

Python爬取微信小程序Charles實現過程圖解

至此,Charles相關的配置完畢。

三、Charles數據抓取

手機與Charles均配置成功后,打開微信小程序,此時Charles會自動獲取http與https訪問,如下:

Python爬取微信小程序Charles實現過程圖解

點擊左邊解析的鏈接,選擇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爬取微信小程序Charles實現過程圖解

其實,當通過Charles解析出url鏈接時,即可通過python爬蟲爬取接口返回的數據了,不涉及反爬蟲等問題,非常方便。

四、問題集錦

1.網絡問題:

網傳手機與電腦鏈接的網段必須相同,但是也有不一致的說法,本文測試時,無線網與有線網是處在同一網段下。

2. 手機或電腦無法聯網:

證書問題:證書未能正確安裝,查看手機上是否始終信任證書!(多數情況下如此);電腦上查看證書是否安裝在受信任的位置,瀏覽器中的證書是否正確添加。

防火墻問題:關閉Windows10的防火墻,取消阻止傳入連接。

Python爬取微信小程序Charles實現過程圖解

其他問題:網傳Charles開啟了White list,但測試時并未發現。

3.https加密的鏈接顯示unknow

此問題遇到的可能性最大,導致的原因很多,

最有可能的原因在于證書的問題,證書未能正確安裝,查看手機上是否始終信任證書!!(多數情況下如此,注意iOS版本問題,過高需要始終信任此證書);電腦上查看證書是否安裝在受信任的位置。

五、補充

目前來說,采用Charles抓取移動端微信小程序數據應該是比較容易的,就是配置過程與安裝證書較為繁瑣。

除此之外,網傳另外一種方式,使用TBS爬取微信小程序,本人嘗試后始終未能正確爬取數據,如哪位大神操作正確,抓取數據順利,還望告知,不勝感激!

TBS爬取微信小程序參考連接如下:

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

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: 微信 Python
相關文章:
主站蜘蛛池模板: 塑料托盘厂家直销-吹塑托盘生产厂家-力库塑业【官网】 | 石家庄装修设计_室内家装设计_别墅装饰装修公司-石家庄金舍装饰官网 | POS机办理_个人pos机免费领取-银联pos机申请首页 | 除甲醛公司-甲醛检测治理-杭州创绿家环保科技有限公司-室内空气净化十大品牌 | 楼承板设备-楼承板成型机-免浇筑楼承板机器厂家-捡来 | 北京翻译公司-专业合同翻译-医学标书翻译收费标准-慕迪灵 | 深圳品牌设计公司-LOGO设计公司-VI设计公司-未壳创意 | 黑田精工电磁阀-CAMMOZI气缸-ROSS电磁-上海茂硕机械设备有限公司 | 自动焊锡机_点胶机_螺丝机-锐驰机器人| 台湾阳明固态继电器-奥托尼克斯光电传感器-接近开关-温控器-光纤传感器-编码器一级代理商江苏用之宜电气 | 逗网红-抖音网红-快手网红-各大平台网红物品导航 | 送料机_高速冲床送料机_NC伺服滚轮送料机厂家-东莞市久谐自动化设备有限公司 | 郑州巴特熔体泵有限公司专业的熔体泵,熔体齿轮泵与换网器生产厂家 | ptc_浴霸_大巴_干衣机_呼吸机_毛巾架_电动车加热器-上海帕克 | TwistDx恒温扩增-RAA等温-Jackson抗体-默瑞(上海)生物科技有限公司 | 三佳互联一站式网站建设服务|网站开发|网站设计|网站搭建服务商 赛默飞Thermo veritiproPCR仪|ProFlex3 x 32PCR系统|Countess3细胞计数仪|371|3111二氧化碳培养箱|Mirco17R|Mirco21R离心机|仟诺生物 | 气体热式流量计-定量控制流量计(空气流量计厂家)-湖北南控仪表科技有限公司 | 成都热收缩包装机_袖口式膜包机_高速塑封机价格_全自动封切机器_大型套膜机厂家 | PCB接线端子_栅板式端子_线路板连接器_端子排生产厂家-置恒电气 喷码机,激光喷码打码机,鸡蛋打码机,手持打码机,自动喷码机,一物一码防伪溯源-恒欣瑞达有限公司 假肢-假肢价格-假肢厂家-河南假肢-郑州市力康假肢矫形器有限公司 | 金环宇|金环宇电线|金环宇电缆|金环宇电线电缆|深圳市金环宇电线电缆有限公司|金环宇电缆集团 | 生物风-销售载体,基因,质粒,ATCC细胞,ATCC菌株等,欢迎购买-百风生物 | 东莞螺杆空压机_永磁变频空压机_节能空压机_空压机工厂批发_深圳螺杆空压机_广州螺杆空压机_东莞空压机_空压机批发_东莞空压机工厂批发_东莞市文颖设备科技有限公司 | 医院专用门厂家报价-医用病房门尺寸大全-抗菌木门品牌推荐 | 远程会诊系统-手术示教系统【林之硕】医院远程医疗平台 | 浙江筋膜枪-按摩仪厂家-制造商-肩颈按摩仪哪家好-温州市合喜电子科技有限公司 | 小区健身器材_户外健身器材_室外健身器材_公园健身路径-沧州浩然体育器材有限公司 | 变色龙PPT-国内原创PPT模板交易平台 - PPT贰零 - 西安聚讯网络科技有限公司 | 蓝米云-专注于高性价比香港/美国VPS云服务器及海外公益型免费虚拟主机 | 欧美日韩国产一区二区三区不_久久久久国产精品无码不卡_亚洲欧洲美洲无码精品AV_精品一区美女视频_日韩黄色性爱一级视频_日本五十路人妻斩_国产99视频免费精品是看4_亚洲中文字幕无码一二三四区_国产小萍萍挤奶喷奶水_亚洲另类精品无码在线一区 | 自动化生产线-自动化装配线-直流电机自动化生产线-东莞市慧百自动化有限公司 | 美甲贴片-指甲贴片-穿戴美甲-假指甲厂家--薇丝黛拉 | 山东PE给水管厂家,山东双壁波纹管,山东钢带增强波纹管,山东PE穿线管,山东PE农田灌溉管,山东MPP电力保护套管-山东德诺塑业有限公司 | 中视电广_短视频拍摄_短视频推广_短视频代运营_宣传片拍摄_影视广告制作_中视电广 | 对夹式止回阀厂家,温州对夹式止回阀制造商--永嘉县润丰阀门有限公司 | 无轨电动平车_轨道平车_蓄电池电动平车★尽在新乡百特智能转运设备有限公司 | 散热器-电子散热器-型材散热器-电源散热片-镇江新区宏图电子散热片厂家 | 智能终端_RTU_dcm_北斗星空自动化科技 | 激光内雕_led玻璃_发光玻璃_内雕玻璃_导光玻璃-石家庄明晨三维科技有限公司 激光内雕-内雕玻璃-发光玻璃 | 西子馋火锅鸡加盟-太原市龙城酉鼎餐饮管理有限公司 | 盘式曝气器-微孔曝气器-管式曝气器-曝气盘-斜管填料 | 郑州市前程水处理有限公司 | 政府回应:200块在义乌小巷能买到爱情吗?——揭秘打工族省钱约会的生存智慧 |