1. 程式人生 > >Python爬蟲新手教程:實戰APP抓包,抖音的小姐姐等著我!

Python爬蟲新手教程:實戰APP抓包,抖音的小姐姐等著我!

APP抓包

前面我們瞭解了一些關於 Python 爬蟲的知識,不過都是基於 PC 端瀏覽器網頁中的內容進行爬取。現在手機 App 用的越來越多,而且很多也沒有網頁端,比如抖音就沒有網頁版,那麼上面的視訊就沒法批量抓取了嗎?

答案當然是 No!對於 App 來說應用內的通訊過程和網頁是類似的,都是向後臺傳送請求,獲取資料。在瀏覽器中我們開啟除錯工具就可以看到具體的請求內容,在 App 中我們無法直接看到。所以我們就要通過抓包工具來獲取到 App 請求與響應的資訊。關於抓包工具有 Wireshark,Fiddler,Charles等。今天我們講一下如何用 Fiddler 進行手機 App 的抓包。

Fiddler 的工作原理相當於一個代理,配置好以後,我們從手機 App 傳送的請求會由 Fiddler 傳送出去,伺服器返回的資訊也會由 Fiddler 中轉一次。所以通過 Fiddler 我們就可以看到 App 發給伺服器的請求以及伺服器的響應了。

Fiddler 安裝配置

我們安裝好 Fiddler 後,首先在選單 Tool>Options>Https 下面的這兩個地方選上。

然後在 Connections 標籤頁下面勾選上 Allow remote computers to connect,允許 Fiddler 接受其他裝置的請求。

同時要記住這裡的埠號,預設是 8088,到時候需要在手機端填。

配置完畢,儲存後,一定關掉 Fiddler 重新開啟。

手機端配置

確保手機和電腦在同一個區域網中,我們先看下計算機的 IP 地址,在 cmd 中輸入 ipconfig就可以看到。我電腦用的是無線網,所以 IP 地址為 192.168.1.3。

開啟手機無線連線,選擇要連線的熱點。長按選擇修改網路,在代理中填上我們電腦的 IP 地址和 Fiddler 代理的埠。如下圖所示:

儲存後,在手機原生瀏覽器開啟 http://192.168.1.3 :8008 ,就是上面我們的計算機 IP 和埠。這一步我在夸克瀏覽器中開啟是不行的,一定要到手機自帶的瀏覽器開啟。Python資源分享qun 784758214 ,內有安裝包,PDF,學習視訊,這裡是Python學習者的聚集地,零基礎,進階,都歡迎

開啟後,點選下圖連結,下載證書,然後安裝證書。

電腦端瀏覽器也需要開啟此地址,安裝證書,方便以後對瀏覽器的抓包操作。

安裝後就萬事 OK 了,可以用手機開啟 App ,在 Fiddler 上愉快的抓包了。

抓包

我們開啟抖音 App,會發現 Fiddler 上出來很多連線。我們先清空沒用的連線資訊,然後滑動到某個人的主頁上,來檢視他釋出過的所有視訊,同時在 Fiddler 上找到視訊連結。

經過觀察篩選我們可以看出上圖就是我們需要的請求地址,這個地址其實是可以在瀏覽器上開啟的,但是我們需要改一下瀏覽器的User-Agent,我用的是Firefox的外掛,開啟後和 Fiddler 右邊的資訊是一致的。我們看下 Fiddler 右邊該請求的響應資訊。

看到返回了一個 JSON 格式的資訊,其中aweme_list 就是我們需要的視訊地址,has_more=1 表示往上滑動還會載入更多。之後就可以寫程式碼了。

程式碼

程式碼很簡單,和我們前幾篇講的一樣,直接用 requests 請求相應連結即可。

程式碼僅做為一個簡單的例子,僅僅下載當前頁面的內容,如果要下載全部的視訊,可以根據當次返回 JSON 結果中的 has_more 和 max_cursor 引數構造出新的 URL 地址不斷的下載。

URL 中的 user_id 可以根據自己要爬取的使用者更改,可以通過把使用者分享到微信,然後在瀏覽器中開啟連結,在開啟的 URL 中可以看到使用者的 user_id。

import requests
import urllib.request
def get_url(url):
 headers = {'user-agent': 'mobile'}
 req = requests.get(url, headers=headers, verify=False)
 data = req.json()
 for data in data['aweme_list']:
 name = data['desc'] or data['aweme_id']
 url = data['video']['play_addr']['url_list'][0]
 urllib.request.urlretrieve(url, filename=name + '.mp4')
if __name__ == "__main__":
 get_url('https://api.amemv.com/aweme/v1/aweme/post/?max_cursor=0&user_id=98934041906&count=20&retry_type=no_retry&mcc_mnc=46000&iid=58372527161&device_id=56750203474∾=wifi&channel=huawei&aid=1128&app_name=aweme&version_code=421&version_name=4.2.1&device_platform=android&ssmix=a&device_type=STF-AL10&device_brand=HONOR&language=zh&os_api=26&os_version=8.0.0&uuid=866089034995361&openudid=008c22ca20dd0de5&manifest_version_code=421&resolution=1080*1920&dpi=480&update_version_code=4212&_rticket=1548080824056&ts=1548080822&js_sdk_version=1.6.4&as=a1b51dc4069b2cc6252833&cp=dab7ca5f68594861e1[wIa&mas=014a70c81a9db218501e1433b04c38963ccccc1c4cac4c6cc6c64c')
Python資源分享qun 784758214 ,內有安裝包,PDF,學習視訊,這裡是Python學習者的聚集地,零基礎,進階,都歡迎

執行後就可以得到視訊列表:

相關推薦

Python爬蟲新手教程實戰APP姐姐

APP抓包 前面我們瞭解了一些關於 Python 爬蟲的知識,不過都是基於 PC 端瀏覽器網頁中的內容進行爬取。現在手機 App

Python爬蟲新手教程手機APP資料取 pyspider

1. 手機APP資料----寫在前面 繼續練習pyspider的使用,最近搜尋了一些這個框架的一些使用技巧,發現文件竟然挺難理解的

Python爬蟲新手教程微醫掛號網醫生資料

1. 寫在前面 今天要抓取的一個網站叫做微醫網站,地址為 https://www.guahao.com ,我們將通過python3

Python爬蟲新手教程Python分析了 7 萬款 App萬萬沒想到

摘要:使用 Scrapy 爬取豌豆莢全網 70,000+ App,並進行探索性分析。 寫在前面:若對資料抓取部分不感興趣,可以直接

Python爬蟲新手教程 知乎文章圖片爬取器

1. 知乎文章圖片爬取器之二部落格背景 昨天寫了知乎文章圖片爬取器的一部分程式碼,針對知乎問題的答案json進行了資料抓取,部落格

Python爬蟲新手教程爬取了6574篇文章告訴你產品經理在看什麼

作為網際網路界的兩個對立的物種,產品汪與程式猿似乎就像一對天生的死對頭;但是在產品開發鏈條上緊密合作的雙方,只有通力合作,才能更好

Python爬蟲視訊教程教你爬取QQ音樂資料(實戰處理+資料視覺化)-劉宇宙-專題視訊課程...

Python爬蟲視訊教程:教你爬取QQ音樂資料(實戰處理+資料視覺化)—704人已學習 課程介紹        本視訊課程主要培訓Python爬蟲入門,資料分析及資料視覺化實戰內容,通過本課的學習,您可以在2小時左右掌握Python基礎程式設計的核心內容,實現Python在爬

Python爬蟲入門教程 46-100 Charles取手機收音機-手機APP爬蟲部分

核心 code 遺憾 ~~ 希望 mitm use alt 比較 1. 手機收音機-爬前叨叨 今天選了一下,咱盤哪個APP呢,原計劃是弄荔枝APP,結果發現竟然沒有抓到數據,很遺憾,只能找個沒那麽圓潤的了。搜了一下,找到一個手機收音機 下載量也是不錯的。 2. 爬蟲套路

爬蟲——Scrapy框架案例一手機APP

debug domain hone targe allow topic document more ebs 以爬取鬥魚直播上的信息為例: URL地址:http://capi.douyucdn.cn/api/v1/getVerticalRoom?limit=20&of

Python大牛指點新手掌握這5點可以快速從入門到進階

訓練 數據庫系統 分享 ges 包括 edi 學習交流 nba 應用 Python是一種完全開放源碼的語言,代碼可以隨意讀取給任何人。這種方法可以幫助人們找到更好、簡潔和簡潔的代碼,並在許多方面節省不必要的時間,因為它適合直接應用或簡化。經常看的好源碼,不僅能讓你學習別人的

Python爬蟲也能用手機進行?沒錯這個技巧只告訴你

今天要說說怎麼在我們的手機抓包 我們知道了 HTTP 的請求方式 以及在 Chrome 中摸清了一些套路 但是 除了對資料進行解析

app根據接口開發web端

web php app 抓包 平時喜歡看某個做視頻的app,最近app有bug,看著看著就會閃退,回到首頁,反饋給官方,好久也不處理,於是自己抓包app的接口,直接用php開發個web版本的自己用.首先抓包過程就不說了,我的另一篇博客有詳細介紹:Charles抓包https,http先看一下w

python3基礎教程列舉與閉你需要知道的知識點

列舉   字典表示方法:{‘yellow’:1,'green':2} 型別一旦確定下來是不能被改變的 列舉的保護功能:禁止修改標籤的值 避免出現重複的標籤 更多Python視訊、原始碼、資料加群960410445免費獲取  

Python爬蟲之如何爬取姐姐的視訊

介紹這次爬的是當下大火的APP--抖音,批量下載一個使用者釋出的所有視訊。各位也應該知道,抖音只

Python 實現自動刷姐姐

前言 都說抖音有毒,一刷就停不下來了,看來抖音這款產品緊緊抓住了人們內心深處的某些需求。當然今天不是來探討抖音這款產品的啊。今天我們來學習如何用Python實現自動刷抖音,併為顏值高的的小哥哥小姐姐點贊並評論。 專案環境 語言:Python3 編輯器:Pycharm 其他工具:手

python爬取無水印姐姐視訊(2018最新,含Pyqt客戶端)

       各位小夥伴,之前一段時間迷上了抖音小姐姐視訊,但是下載的視訊都有水印,於是自己用Python 寫了個爬取小姐姐視訊的工具,大家可以直接拷貝到自己編譯器上執行。此外,我還利用pyqt5寫了個操作介面,這樣可以方便不懂程式碼的人使用。後面程式碼我都會一一貼上來。備註

自動人臉識別高顏值姐姐並點贊(python)

  抖音經常能刷到很多高質量的視訊,特別是我們使用的越多,頭條的演算法給我們推薦的內容越精準。  學習Python中有不明白推薦加入交流群                 號

Python 自動識別姐姐並點贊

程式碼基本為原作者 tomxin7 所寫,我改了一些邏輯處理和更新API。 效果 抖音經常能刷到很多高質量的視訊,特別是我們使用的越多,頭條的演算法給我們推薦的內容越精準。那麼我們可不可以寫一個小型的程式,根據自己設定的特徵篩選視訊並且自動點贊存入我們的

Python爬蟲(BeautifulSoup)實戰取豆瓣讀書新書速遞模組

import requests from bs4 import BeautifulSoup html = requests.get('https://book.douban.com/').text s

新手教程如何使用Burpsuite取手機APP的HTTPS資料

· 手機已經獲取root許可權· 手機已經成功安裝xposed框架· 電腦一臺2.詳細步驟2.1 在手機上面安裝xposed JustTrustMeJustTrustMe是一個去掉https證書校驗的xposed hook外掛,去掉之後就可以抓取做了證書校驗的app的資料包。JustTrustMe在githu