日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

Python爬取梨視頻的示例

瀏覽:188日期:2022-06-28 18:36:07
爬取流程(美食區(qū)最熱標(biāo)簽下的三個視頻) 在首頁獲取視頻的編號和名字 拼接成正確的url 保存視頻 思路1.從網(wǎng)頁中獲取視頻的url

Python爬取梨視頻的示例

發(fā)現(xiàn)視頻的url在id為“JprismPlayer”的div標(biāo)簽下的video標(biāo)簽src屬性中,xpath解析網(wǎng)頁

video_url = tree.xpath('//div[@id=’JprismPlayer’]/video/@src')

但得到的返回值為空,也就是說這個video標(biāo)簽在原網(wǎng)頁中并不存在,很可能是動態(tài)加載出來的

2. 從動態(tài)請求獲取視頻的url

Python爬取梨視頻的示例

果然在動態(tài)請求中發(fā)現(xiàn)了包含視頻url的json數(shù)據(jù)

Python爬取梨視頻的示例

可是發(fā)起請求后拿到的json數(shù)據(jù)卻和抓包工具中看到的不一樣,試著在請求頭中加入Referer參數(shù),查看referer可以發(fā)現(xiàn),它最后video_后面跟的是首頁中視頻的編號

Python爬取梨視頻的示例

{'resultCode':'1','resultMsg':'success', 'reqId':'fd1c910d-f49a-431a-b9a4-9c193c3c1983','systemTime': '1611666178518','videoInfo':{'playSta':'1','video_image':'https://image1.pearvideo.com/cont/20210125/11107897-184717-1.png','videos':{'hdUrl':'','hdflvUrl':'','sdUrl':'','sdflvUrl':'','srcUrl':'https://video.pearvideo.com/mp4/third/20210125/1611666178518-11107897-181816-hd.mp4'}}}

在headers中加入Referer后順利拿到j(luò)son數(shù)據(jù)

Python爬取梨視頻的示例

可向json數(shù)據(jù)中的視頻url發(fā)起請求拿到的卻是404頁面

3. 拼接正確的url

這里花了很長時間去想哪里有問題,把前面的步驟理了很多遍才發(fā)現(xiàn),其實(shí)動態(tài)請求返回的json數(shù)據(jù)中的視頻url和主頁video標(biāo)簽中的視頻url根本不一致

Python爬取梨視頻的示例

首頁中加載出來的視頻鏈接是正確的,可以順利的拿到視頻,而json數(shù)據(jù)中的鏈接則會返回404。把他們進(jìn)行對比,可以看到他們前半部分是一樣的,但到了紅線框住的地方就不一樣了。正確的url是 cont-視頻id-而json數(shù)據(jù)中的url這個部分是 一串?dāng)?shù)字那只要把這一串?dāng)?shù)字改成 cont-視頻id- 的形式就能獲得正確的視頻url了

代碼

# 爬取梨視頻import requestsfrom lxml import etreeimport osfrom multiprocessing import Pool# 梨視頻首頁urlurl = 'https://www.pearvideo.com/category_6'headers = {’User-Agent’: ’Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.104 Safari/537.36’ }# 獲取響應(yīng),并用etree解析response = requests.get(url=url, headers=headers).texttree = etree.HTML(response)# 拿到視頻的名字和視頻號video_id_list = tree.xpath('//ul[@class=’listvideo-list clearfix’]/li[@class=’categoryem ’]//a[@class=’vervideo-lilink actplay’]/@href')video_name_list = tree.xpath('//ul[@class=’listvideo-list clearfix’]/li[@class=’categoryem ’]//a/div[@class=’vervideo-title’]/text()')data_list = [{'name': video_name_list[i], 'idNum': video_id_list[i][6:]} for i in range(len(video_name_list))]# 創(chuàng)建一個存放視頻的文件夾if not os.path.exists('./videos'): os.mkdir('./videos')# 獲取視頻的函數(shù)def down_video(data): name = data[’name’] idNum = data[’idNum’] # 獲取視頻需要的headers,注意這里的Referer要和視頻的id匹配 headers = { ’User-Agent’: ’Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.104 Safari/537.36’, ’Referer’: f’https://www.pearvideo.com/video_{idNum}’ } # 獲取接近真正視頻url的url,這里的id也需要和視頻id匹配才行 url = f’https://www.pearvideo.com/videoStatus.jsp?contId={idNum}’ # 得到包含視頻地址json響應(yīng)數(shù)據(jù) response = requests.get(url=url, headers=headers).json() video_url = response['videoInfo']['videos']['srcUrl'] # 將視頻地址中的數(shù)字替換成 cont-視頻編號 拿到真正的視頻地址 video_url = video_url.replace(video_url.split('/')[-1].split('-')[0], 'cont-' + idNum) # 拿到視頻并保存 video = requests.get(url=video_url, headers=headers).content with open(f'./videos/{name}.mp4', 'wb') as f: print(f'正在下載視頻 {name} ...') f.write(video) print(f'視頻 {name} 下載完成!')if __name__ == ’__main__’: # 創(chuàng)建進(jìn)程池并使用 pool = Pool(3) pool.map(down_video, data_list) pool.close() pool.join()總結(jié)

其實(shí)最難的地方是獲取正確的視頻url,中間過程比較繞。只要找到這個地址,再加上從首頁拿到的視頻id就可以順利拿到視頻了。如果要爬取整個首頁視頻只需要重新設(shè)置xpath路徑就可以了。

以上就是Python爬取梨視頻的示例的詳細(xì)內(nèi)容,更多關(guān)于Python爬取梨視頻的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩欧美精品综合| 视频在线观看91| 亚洲欧洲日韩精品在线| 黑丝一区二区三区| 国产精品美女久久久| 午夜国产精品视频| 蜜臀av亚洲一区中文字幕| 欧美福利在线| 久久最新视频| 日韩av不卡在线观看| 国产精品第一国产精品| 精品伊人久久| 久久精品一区| 91精品国产乱码久久久久久久| 亚洲一区成人| 国产精品s色| 91精品婷婷色在线观看| 中文亚洲欧美| 免费在线欧美黄色| 欧美一区二区性| 综合一区二区三区| 国产精品nxnn| 在线综合亚洲| 国际精品欧美精品| 日韩中文字幕91| 精品视频97| 美女国产精品| 久久免费影院| 亚洲专区欧美专区| 精品久久97| 亚洲有吗中文字幕| 日韩毛片视频| 国产精品草草| 中文字幕av亚洲精品一部二部| 色综合五月天| 久久精品xxxxx| 欧美日韩视频| 群体交乱之放荡娇妻一区二区| 日本电影久久久| 婷婷综合五月| 精品国产三区在线| 91成人在线网站| 日本精品影院| 国产一区二区色噜噜| 国产精品一区亚洲| 日韩欧美三区| 久久国产高清| 亚洲欧美日韩一区在线观看| 激情综合激情| 国产精品av一区二区| 久久天堂av| 久久蜜桃精品| 性感美女一区二区在线观看| 美女精品久久| 精品久久国产一区| 日本黄色精品| 久久久久久色| 美女精品在线观看| 日韩午夜av| 亚洲一区二区三区四区五区午夜| 激情欧美国产欧美| 国产亚洲综合精品| 三级在线观看一区二区| 亚洲午夜久久| 91大神在线观看线路一区| 国产日韩欧美一区二区三区| 国产精品一区二区三区美女 | 日韩精品一区二区三区中文字幕| 亚洲成av人片一区二区密柚| 久久精品青草| 午夜久久黄色| 国产精品一区二区三区av| 麻豆国产一区| 日韩欧美1区| 亚洲欧洲日本mm| 久久久久.com| 久久成人国产| 国产精品a级| 精品视频国产| 亚洲高清av| 日韩精品亚洲aⅴ在线影院| 日韩美女国产精品| 国产精品啊v在线| 亚洲天堂1区| 亚洲精品国产精品粉嫩| 精品久久久网| 亚洲九九精品| 国产精品毛片久久| 国产精品嫩草99av在线| 欧美精品91| 国产模特精品视频久久久久| 国产精东传媒成人av电影| 999久久久国产精品| 日本一不卡视频| 日韩黄色大片| 日韩二区三区在线观看| 成人影视亚洲图片在线| 亚洲一区二区小说| 欧美三级网址| 国产精品一卡| 国产精品嫩草99av在线| 中文字幕在线视频网站| 欧美日韩xxxx| 蜜桃av一区二区| 天堂资源在线亚洲| 韩国一区二区三区视频| 亚洲综合色婷婷在线观看| 少妇久久久久| 精品少妇一区| 麻豆精品在线| 清纯唯美亚洲综合一区| 久久人人97超碰国产公开结果| 国产精品香蕉| 国产日产一区| 日韩av一区二区在线影视| 奶水喷射视频一区| 99成人在线| 久久久精品午夜少妇| 日韩欧美一区二区三区免费观看| 国产精品tv| 国产精品草草| 国产精品xvideos88| 国产福利一区二区精品秒拍| 日韩欧美精品一区二区综合视频| 视频在线观看一区二区三区| 亚洲欧美日韩国产一区二区| 麻豆精品蜜桃| 精品九九在线| 成人亚洲一区| 久久国产直播| 久久精品国产亚洲夜色av网站 | 中文字幕在线视频网站| 亚洲综合电影| 亚洲福利精品| 最新亚洲一区| 视频一区二区欧美| 亚洲精品日韩久久| 天堂av一区| 国产精品资源| 91视频精品| 日韩一级欧洲| 久久精品99国产精品| 国产精品欧美日韩一区| 麻豆国产精品| 激情视频网站在线播放色| 久久天堂av| 亚洲免费影视| 久久中文欧美| 欧美二三四区| 亚洲我射av| 国产一区精品福利| 免费中文字幕日韩欧美| 7777精品| 久久久久国产精品一区二区| 日韩精品1区2区3区| 日韩电影免费网站| 亚洲精品影院在线观看| 毛片在线网站| 久久激情五月激情| 亚洲深夜影院| 91亚洲一区| 久久激情av| 免费在线观看一区二区三区| 国产一二在线播放| 日韩区一区二| 亚洲婷婷免费| 国产亚洲欧美日韩在线观看一区二区 | 国产精品专区免费| 日韩美女精品| 久久国产影院| 国内揄拍国内精品久久| 亚洲欧美久久久| 成人福利av| 欧美在线91| 三级在线观看一区二区| 久久麻豆精品| 偷拍亚洲精品| 久久天堂精品| 国产96在线亚洲| 国产精久久久| 国产精品久久久一区二区| 日本不卡高清| 亚洲精品乱码久久久久久蜜桃麻豆 | 中文字幕在线视频久| 日韩av中文字幕一区二区| 在线视频亚洲| 在线亚洲免费| 久热精品在线| 亚洲v天堂v手机在线| 亚洲在线久久| 日本麻豆一区二区三区视频| 亚洲色图国产| 日韩激情av在线| 国产精品一线| 国产69精品久久| 日韩在线中文| 久久久久国产| 视频一区二区中文字幕| 免费日本视频一区| 欧美日韩少妇|