Python 短視頻爬蟲教程
發(fā)布日期:2021-12-08 16:03 | 文章來源:gibhub
好難受,上次發(fā)了做游戲的居然沒人看,每天為了給你們寫啥,老夫心都操碎了~

真的是,今天來給大家爬一波短視頻網(wǎng)站吧,都是些很養(yǎng)眼的~

網(wǎng)站地址在代碼里面,大家用心一下就能看到了。
使用的軟件
python 3.8 pycharm 2021.2
模塊
requests parsel re concurrent.futures time warnings
不會安裝模塊看這篇:python模塊的安裝以及安裝失敗的解決方法
知道你們不想看那些步驟,我直接上代碼吧
import requests
import parsel
import re
import concurrent.futures
import time
import warnings
# 取消警告
warnings.filterwarnings("ignore")
def get_html(url):
"""發(fā)送請求獲取網(wǎng)頁源代碼"""
html_data = requests.get(url=url, verify=False).text
return html_data
def parse_data_1(html_data):
"""第一次解析, 拿到所有的詳情頁鏈接"""
selector = parsel.Selector(html_data)
url_list = selector.xpath('//a[@class="meta-title"]/@href').getall()
return url_list
def parse_data_2(html_data):
"""第二次解析, 獲取視頻鏈接"""
video_url = re.findall('url: "(.*?)",', html_data)[0]
return video_url
def save(video_url):
"""保存視頻"""
title = video_url.split('/')[-1] # 取鏈接當中的字段作為標題
video_data = requests.get(video_url, verify=False).content # 發(fā)送網(wǎng)絡(luò)請求
with open(f'video/{title}', mode='wb') as f:
f.write(video_data)
print(title, "爬取成功!!!")
start_time = time.time()
url = 'https://www.520mmtv.com/hd/rewu.html'
# 1. 向目標網(wǎng)站發(fā)送請求
html_data = get_html(url=url)
# 2. 第一次解析數(shù)據(jù) 提取詳情頁鏈接
url_list = parse_data_1(html_data=html_data)
for info_url in url_list[:10]:
# 3. 向詳情頁發(fā)送請求
html_data_2 = get_html(url=info_url)
# 4. 第二次解析數(shù)據(jù) 提取視頻播放地址
video_url = parse_data_2(html_data=html_data_2)
# 5. 保存視頻
save(video_url=video_url)
print('花費時間:', time.time() - start_time)
到此這篇關(guān)于Python 短視頻爬蟲教程的文章就介紹到這了,更多相關(guān)Python 爬蟲教程內(nèi)容請搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!
版權(quán)聲明:本站文章來源標注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。
相關(guān)文章
關(guān)注官方微信