溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

微信小程序的抓取技巧是什么

發(fā)布時(shí)間:2022-01-04 09:16:23 來(lái)源:億速云 閱讀:338 作者:柒染 欄目:大數(shù)據(jù)

微信小程序的抓取技巧是什么,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

今天聊下微信小程序的抓取,其實(shí)小程序的抓取不難,主要解決抓包和如何調(diào)試小程序這兩個(gè)問(wèn)題。如果你運(yùn)用chrome調(diào)試已經(jīng)比較熟練了的話,就手到擒來(lái)。
先來(lái)說(shuō)小程序抓包問(wèn)題    
不用破解的辦法如何抓到小程序的包?破解是個(gè)費(fèi)勁的事,一不小心微信賬號(hào)還可能被封。
小程序抓不到包通常就是你手機(jī)的安卓系統(tǒng)版本太高和微信APP的版本太高了。版本越高,通常它的安全性就越好。換用安卓系統(tǒng)是4.4的手機(jī)和微信APP版本在6.7左右的版本。使用Fiddler或Charles抓包妥妥的。  
如果你實(shí)在沒(méi)有低安卓系統(tǒng)版本手機(jī)和低版本微信,繼續(xù)看下面的文字,待會(huì)再介紹一種抓包方法。
只要抓包搞定了,很多小程序也就能抓取了,剩下就是解決IP問(wèn)題。還有一部分小程序在前端有反爬措施,對(duì)請(qǐng)求參數(shù)加密或混淆了。所以就還得解決小程序調(diào)試問(wèn)題。  
再說(shuō)下小程序調(diào)試問(wèn)題    
首先得對(duì)小程序有一點(diǎn)理解,小程序簡(jiǎn)單來(lái)說(shuō)也是一個(gè)網(wǎng)站,只是它只能在微信里打開(kāi),不能在瀏覽器里打開(kāi)。  
我們都知道一個(gè)網(wǎng)站的前端頁(yè)面是由html、css、javascript組成,小程序的前端頁(yè)面也是由類似這樣的來(lái)組成的。小程序里的數(shù)據(jù)交互也是由javascript來(lái)負(fù)責(zé)的。所以爬蟲(chóng)調(diào)試小程序也主要是調(diào)試javascript。
那怎么調(diào)試小程序的javascript呢?
當(dāng)我們?cè)谖⑿爬稂c(diǎn)擊小程序時(shí),微信會(huì)把這個(gè)小程序的前端代碼下載到你的手機(jī)上。我們只要拿到這個(gè)小程序前端代碼,就能在微信提供的小程序開(kāi)發(fā)者工具上進(jìn)行調(diào)試。  
小程序代碼的路徑在:  
/data/data/com.tencent.mm/MicroMsg/微信號(hào)id文件夾/appbrand/pkg/
該路徑下以.wxapkg結(jié)尾的文件就是小程序前端代碼被編譯之后的形式。  
微信小程序的抓取技巧是什么
你會(huì)看到很多個(gè).wxapkg文件,因?yàn)槟愦蜷_(kāi)過(guò)很多小程序,最好是你把這個(gè)文件下的文件全都刪除,重新打開(kāi)目的小程序。然后里面的.wxapkg文件就都是該小程序的了。
你需要把.wxapkg的文件都拷貝到你的電腦上來(lái)。(拷貝該目錄需要你擁有root權(quán)限,所以你得先把手機(jī)root了,或者在安卓模擬器里面使用微信,進(jìn)行如上操作,模擬器默認(rèn)是root了的)。
解包wxapkg    
我們的目的是拿到小程序的前端代碼在小程序開(kāi)發(fā)者工具里面調(diào)試,wxapkg是編譯之后的小程序,所以還得反編譯,讓wxapkg解包出源代碼。  
要感謝開(kāi)源的世界,已經(jīng)有愛(ài)好者開(kāi)發(fā)出了.wxapkg的解包程序,我們就直接拿過(guò)來(lái)用。  
解包程序的github地址是:
https://github.com/qwerty472123/wxappUnpacker
解包程序是由node.js開(kāi)發(fā)的,所以你得先安裝node.js,然后再安裝node.js的一些依賴包,作者已經(jīng)在文字里說(shuō)得很清楚了。我就不再贅述,網(wǎng)上也有很多該程序的用法文章。
最后你只需要運(yùn)行命令:
   
     
   
   
   node xxxxxx.wxapkg
node是運(yùn)行node.js的命令,即可把小程序前端源代碼還原了。類似下圖這樣的。
微信小程序的抓取技巧是什么
調(diào)試小程序  
注冊(cè)一個(gè)小程序開(kāi)發(fā)者賬號(hào)
注冊(cè)地址:https://mp.weixin.qq.com/cgi-bin/registermidpage?action=index&lang=zh_CN&token=
微信小程序的抓取技巧是什么
下載小程序開(kāi)發(fā)者工具:  
https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html
微信小程序的抓取技巧是什么
打開(kāi)小程序開(kāi)發(fā)者工具,選擇導(dǎo)入已有項(xiàng)目,就是選擇上面解包出來(lái)的那個(gè)文件夾。
微信小程序的抓取技巧是什么
點(diǎn)擊確定。就出現(xiàn)以下界面。
微信小程序的抓取技巧是什么
這就可以對(duì)該小程序做調(diào)試了,界面是不是很熟悉,是不是跟chrome瀏覽器的調(diào)試很相似。你可以點(diǎn)選sources面板,然后對(duì)js打斷點(diǎn),也可以在console里直接運(yùn)行一段js代碼。想要知道請(qǐng)求的URL是如何加密的,跟chrome一樣,打斷點(diǎn)調(diào)試即可。具體怎么打斷點(diǎn)調(diào)試,我已在猿人學(xué)公眾號(hào)上寫了好幾篇,你可以回頭再去看看。
另外我文章上半部分說(shuō)了一個(gè)抓包問(wèn)題,還沒(méi)有解答,如果是高版本安卓系統(tǒng),高微信版本如何抓包小程序。一種小技巧就是借助小程序開(kāi)發(fā)者工具來(lái)抓包,細(xì)看上圖紅框,有個(gè)Network面板,跟chrome的功能是一樣的,這個(gè)小程序的網(wǎng)絡(luò)請(qǐng)求在Network面板里能看到。
另外因?yàn)檫@個(gè)小程序是別人開(kāi)發(fā)的,你要把這個(gè)小程序運(yùn)行起來(lái),要讓它不去驗(yàn)證域名和ssl證書(shū)那些,如下。  
微信小程序的抓取技巧是什么

綜上解決了抓包和調(diào)試小程序問(wèn)題,就能抓取絕大部分小程序了。還有一些小程序必須要微信登陸才能訪問(wèn),要大規(guī)模抓取,你還是得解決大量賬號(hào)的問(wèn)題。

看完上述內(nèi)容,你們掌握微信小程序的抓取技巧是什么的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI