請(qǐng)問(wèn)有什么方法可以抓取華為應(yīng)用市場(chǎng)的APK信息?
下面是我試過(guò)且成功的方法,步驟如下:
首先打開(kāi)華為官網(wǎng)
看到如下頁(yè)面。然后我們?cè)诠雀铻g覽器中按F12查看一下下載是否是明文鏈接
隨便選擇一個(gè),右鍵查看下載的屬性。
在這里我們可以看見(jiàn)a標(biāo)簽的onclick是一個(gè)js方法zhytools.downloadApp();
方法體大致有幾個(gè)參數(shù),可能分別是文件ID(唯一碼)、文件名稱(chēng)、文件所屬類(lèi)別(華為自己的分類(lèi)如:上升最快、首頁(yè)等等)、這個(gè)數(shù)量也可能是某個(gè)id、文件類(lèi)別(文件所屬的應(yīng)用分類(lèi))、文件下載路徑、文件版本、最后個(gè)好像默認(rèn)都是1。
好了我們看到一個(gè)下載方法有這么多參數(shù)。
然后我們可以打開(kāi)其中的下載地址看看。
其中下載地址是這一段。在瀏覽器直接輸入這個(gè)地址
則彈出了APK下載信息。好了。那么我們只要存儲(chǔ)對(duì)于的地址。放入我們的應(yīng)用市場(chǎng)接口之中。那么我們的應(yīng)用市場(chǎng)的數(shù)據(jù)將可以來(lái)源與華為應(yīng)用市場(chǎng)了。
好了我們開(kāi)始實(shí)戰(zhàn)!
首先用vs創(chuàng)建一個(gè)windows應(yīng)用程序。
輸入程序名字Crawler
點(diǎn)擊確定
首先給form的size改成1280*768(看著舒服點(diǎn))
然后我們分別拖一個(gè)textbox1作為網(wǎng)址輸入地址。
一個(gè)webbrowser用來(lái)獲取網(wǎng)頁(yè)信息
一個(gè)按鈕用來(lái)綁定webbrowser
一個(gè)textbox2的多行文本框來(lái)顯示抓取信息。
(這里先簡(jiǎn)單展示。可做優(yōu)化存入數(shù)據(jù)庫(kù))
然后我們雙擊button1
綁定webbrowser1的url地址
和頁(yè)面加載完成事件。
然后我們?cè)陧?yè)面加載事件里讀取webbrowser的html內(nèi)容這里我們簡(jiǎn)單用正則去匹配
zhytools.downloadApp(.+);來(lái)讀取參數(shù)內(nèi)容
我們運(yùn)行一下程序看看
程序運(yùn)行后我們?cè)趗rl地址輸入華為的應(yīng)用市場(chǎng)頁(yè)面地址https://app.hicloud.com/
然后點(diǎn)擊確定按鈕
可以看到我們抓取了很多鏈接。我們可以將這些連接的參數(shù)分割存入我們的數(shù)據(jù)庫(kù)使用。
當(dāng)然這里只是抓取了首頁(yè)的一部分連接。然后我們點(diǎn)擊游戲排行的更多
可以看到跳轉(zhuǎn)到新頁(yè)面我們又抓取了很多鏈接。
在點(diǎn)擊一下精品推薦試試
可以看到我們抓了很多當(dāng)前頁(yè)面的下載鏈接。
希望我的回答可以給你帶來(lái)幫助哦!