Python3 源代碼和軟件 | 抖音關(guān)鍵詞視頻搜索爬蟲
歡迎關(guān)注公眾號「月小水長」,唯一筆者是 BuyiXiao,又名小布衣、肖不已。
BuyiXiao,何許人也?本衡州一鄉(xiāng)野村夫,身高八尺不足,年方二十有余;弱冠之年曾求學(xué)于潭州,為謀生計(jì),背井離鄉(xiāng),遠(yuǎn)赴京畿,我本南人,不習(xí)北土,兼有故友,威逼利誘,急于星火,遂下嶺南,打工未半,中道創(chuàng)業(yè),所為何業(yè)?美其名曰,智能硬件;假工程師之名,行農(nóng)民工之實(shí),滿腹經(jīng)綸,無用書生,善于自黑,貽笑大方。
筆者水平有限,可能暫時無法將非常干貨的教程講的不拖泥帶水又不嘩眾取寵,公眾號文章諸多遺漏或不妥之處,可以加月小水長微信「2391527690」備注「學(xué)校專業(yè)/研究方向/工作崗位」進(jìn)行交流。
另外,文末點(diǎn)下「贊」和「在看」,這樣每次新文章推送,就會第一時間出現(xiàn)在你的訂閱號列表里。
今天分享的是抖音搜索爬蟲的 Python3 源代碼和軟件,可以按照關(guān)鍵詞采集抖音視頻。
目標(biāo)站點(diǎn)是抖音的網(wǎng)頁版本 douyin.com,接口地址如下:
https://www.douyin.com/aweme/v1/web/search/item/
單個關(guān)鍵詞單詞最多能采集到幾百條視頻的信息,這是接口的限制;
接口接受排序和時間兩個參數(shù),排序可以選擇綜合排序、最新發(fā)布和最多點(diǎn)贊,
而時間參數(shù)可選一天內(nèi)、一周內(nèi)和半年內(nèi),同樣也是三種;
所以對于一個關(guān)鍵詞,可以有 3*3 種參數(shù)組合,不過很多都是重復(fù)數(shù)據(jù),需要去重,
爬完一個關(guān)鍵詞的所有參數(shù)組合后,我們可以設(shè)定排序?yàn)樽钚掳l(fā)布,增量爬取新發(fā)布的抖音視頻。
訪問接口需要配置以下參數(shù),均可在抖音網(wǎng)頁版登錄后使用 Chrome 的 F12 工具直接獲取:
1、headers 里面的 cookie
2、params 里面的 X-Bogus 和 msToken 等
params 不需要我們逆向,可以直接獲取,如果對獲取流程不熟悉的可以參考這一篇:Python 源代碼 | 2024 版抖音評論采集爬蟲
接口直接返回 json 數(shù)據(jù),可以直接解析,通過解析響應(yīng)里面的 cursor 賦值給 params 里面的 offset 參數(shù)控制翻頁;
核心代碼如下:
while True:
response = requests.get('https://www.douyin.com/aweme/v1/web/search/item/',
params=params, headers=headers)
resp_json = response.json()
save_data(result_file, resp_json)
has_more = resp_json.get('has_more')
if int(has_more) == 0:
break
cursor = resp_json.get('cursor')
params['offset'] = str(cursor)
sleep(slp_per_req)
最終數(shù)據(jù)保存在 excel 可以直接打開的 csv 文件中,包含 視頻描述、發(fā)布時間、視頻地址、點(diǎn)贊分享收藏評論數(shù)等十余個字段 ,示例數(shù)據(jù)如下:

完整代碼已上傳面包多,購買地址如下:
https://mbd.pub/o/bread/ZZqUkp1y
完整代碼主要功能如下:
-
全部輸入基于 json 文件(記事本可打開)配置,無需修改代碼即可運(yùn)行。
-
可采集多個關(guān)鍵詞的視頻搜索結(jié)果,字段豐富,可根據(jù)接口數(shù)據(jù)自由增刪。
-
支持多達(dá) 3*3 種的排序方式和發(fā)布時間參數(shù)組合采集,便于豐富數(shù)據(jù)。
-
文件保存在標(biāo)準(zhǔn)格式 CSV 中,追加采集時自動清洗去重。
-
純 Python 源代碼,主要依賴 requests + pandas 實(shí)現(xiàn),相對輕量級。
-
代碼遵循 PEP8 規(guī)范,0 error 0 warning,包含爬蟲請求->解析->保存三部曲,可作為基礎(chǔ)爬蟲入門實(shí)戰(zhàn)項(xiàng)目學(xué)習(xí)。
同時對于沒有安裝 Python3 環(huán)境或者不想安裝 Python3 環(huán)境的情況,同樣提供了 exe 版本,配置好后雙擊 exe 即可運(yùn)行,
exe 地址同代碼地址一起獲取,可點(diǎn)擊閱讀原文直達(dá):
https://mbd.pub/o/bread/ZZqUkp1y
購買后即可下載源代碼和 exe 軟件~,運(yùn)行時請合理設(shè)置休眠時間(默認(rèn) 6s)
