Python實現(xiàn)抖音熱搜定時爬取功能
大家好,我是丁小杰。
上次和大家分享了Python定時爬取微博熱搜示例介紹,堪稱摸魚神器,一個熱榜不夠看?今天我們再來爬取一下抖音熱搜榜,感興趣的小伙伴可以自己動手嘗試一下哦。
抖音熱搜榜
鏈接:https://tophub.today/n/K7GdaMgdQy

整個熱榜共50條數(shù)據(jù),本次爬取的內(nèi)容:排名、熱度、標(biāo)題、鏈接。
requests 爬取
requests 是一種非常簡單的方法,由于該頁面沒有反爬措施,所以直接get 請求頁面即可。
import?requests
import?pandas?as?pd
headers?=?{
????'User-Agent':?'Mozilla/5.0?(Windows?NT?10.0;?Win64;?x64)?AppleWebKit/537.36?(KHTML,?like?Gecko)?Chrome/94.0.4606.54?Safari/537.36'
}
url?=?'https://tophub.today/n/K7GdaMgdQy'
page_text?=?requests.get(url=url,?headers=headers).text
page_text

可以看到,只需要幾行代碼,數(shù)據(jù)就很輕松地獲取到了。
selenium 爬取
將selenium設(shè)置為無頭瀏覽器,打開指定url獲取頁面數(shù)據(jù)。
from?selenium?import?webdriver
option?=?webdriver.ChromeOptions()
option.add_argument('--headless')
driver?=?webdriver.Chrome(options=option)
url?=?'https://tophub.today/n/K7GdaMgdQy'
driver.get(url)
page_text?=?driver.page_source
兩種爬取方法都能夠成功獲取到數(shù)據(jù),但requests相對簡潔,整個代碼運行速度也更快,如果頁面數(shù)據(jù)不是動態(tài)加載的話,用requests相對方便。
數(shù)據(jù)解析
現(xiàn)在用lxml庫解析我們爬取的數(shù)據(jù),并保存到excel中。
tree?=?etree.HTML(page_text)
tr_list?=?tree.xpath(
????'//*[@id="page"]/div[2]/div[2]/div[1]/div[2]/div/div[1]/table/tbody/tr')
df?=?pd.DataFrame(columns=['排名',?'熱度',?'標(biāo)題',?'鏈接'])
for?index,?tr?in?enumerate(tr_list):
????hot?=?tr.xpath('./td[3]/text()')[0]
????title?=?tr.xpath('./td[2]/a/text()')[0]
????article_url?=?tr.xpath('./td[2]/a/@href')[0]
????df?=?df.append({
????????'排名':?index?+?1,
????????'熱度':?hot,
????????'標(biāo)題':?title,
????????'鏈接':?article_url},?ignore_index=True)
df['鏈接']?=?'https://tophub.today'?+?df['鏈接']
df
運行結(jié)果

設(shè)置定時運行
至此,爬取代碼已經(jīng)完成,想要實現(xiàn)每小時自動運行代碼,可以使用任務(wù)計劃程序。
打開任務(wù)計劃程序,【創(chuàng)建任務(wù)】

輸入名稱,名稱隨便起就好。

選擇【觸發(fā)器】>>【新建】>>【設(shè)置觸發(fā)時間】

選擇【操作】>>【新建】>>【選擇程序】

最后確認(rèn)即可。到時間就會自動運行,或者右鍵任務(wù)手動運行。
這就是今天要分享的內(nèi)容,整體難度不大,希望大家能夠有所收獲,文章中的代碼拼接起來就可以運行!
以上就是Python實現(xiàn)抖音熱搜定時爬取功能的詳細(xì)內(nèi)容,更多關(guān)于Python抖音熱搜爬取的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python的五個標(biāo)準(zhǔn)數(shù)據(jù)類型你認(rèn)識幾個
這篇文章主要為大家詳細(xì)介紹了Python標(biāo)準(zhǔn)數(shù)據(jù)類型,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-03-03
pytorch教程實現(xiàn)mnist手寫數(shù)字識別代碼示例
這篇文章主要講解了pytorch教程中如何實現(xiàn)mnist手寫數(shù)字識別,文中附有詳細(xì)的代碼示例,test準(zhǔn)確率98%,有需要的朋友可以借鑒參考下2021-09-09
Python數(shù)據(jù)分析應(yīng)用之Matplotlib數(shù)據(jù)可視化詳情
這篇文章主要介紹了Python數(shù)據(jù)分析應(yīng)用之Matplotlib數(shù)據(jù)可視化詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,感興趣的小伙伴可以參考一下2022-06-06
python使用xlrd實現(xiàn)檢索excel中某列含有指定字符串記錄的方法
這篇文章主要介紹了python使用xlrd實現(xiàn)檢索excel中某列含有指定字符串記錄的方法,涉及Python使用xlrd模塊檢索Excel的技巧,非常具有實用價值,需要的朋友可以參考下2015-05-05
Python實現(xiàn)以主程序的形式執(zhí)行模塊
這篇文章主要介紹了Python實現(xiàn)以主程序的形式執(zhí)行模塊,首先創(chuàng)建一個以christmastree的命名的模塊并定義一個全局變量創(chuàng)建一個名稱為fun_christmastree()的函數(shù)展開詳情,感興趣的朋友可以參考一下2022-06-06
YOLOv5以txt或json格式輸出預(yù)測結(jié)果的方法詳解
這篇文章主要給大家介紹了關(guān)于YOLOv5以txt或json格式輸出預(yù)測結(jié)果的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2023-03-03

