資訊內(nèi)容
Python簡(jiǎn)單地實(shí)現(xiàn)一鍵提取陰陽(yáng)師原畫方法

免費(fèi)學(xué)習(xí)推薦:python視頻教程hNC少兒編程網(wǎng)-https://www.pxcodes.com
xpath–簡(jiǎn)單的爬蟲實(shí)例–提取陰陽(yáng)師原畫壁紙hNC少兒編程網(wǎng)-https://www.pxcodes.com
文章目錄hNC少兒編程網(wǎng)-https://www.pxcodes.com
一、前言二、需要用到的庫(kù)三、實(shí)現(xiàn)過(guò)程1、分析網(wǎng)頁(yè)2、完整代碼實(shí)現(xiàn)四、合成視頻一、前言hNC少兒編程網(wǎng)-https://www.pxcodes.com
很多人都玩過(guò)陰陽(yáng)師吧,別的不談,陰陽(yáng)師的原畫制作的那是相當(dāng)?shù)鼐?xì),閑暇之余,用幾行簡(jiǎn)單的代碼爬取下來(lái),豈不美哉?hNC少兒編程網(wǎng)-https://www.pxcodes.com
二、需要用到的庫(kù)hNC少兒編程網(wǎng)-https://www.pxcodes.com
import requestsfrom lxml import etreefrom fake_useragent import UserAgentimport os沒(méi)用安裝庫(kù)的小伙伴,可以看一下我之前寫的這篇文章,里面有很多國(guó)內(nèi)源的鏈接,方便你的下載。hNC少兒編程網(wǎng)-https://www.pxcodes.com
傳送門hNC少兒編程網(wǎng)-https://www.pxcodes.com
三、實(shí)現(xiàn)過(guò)程hNC少兒編程網(wǎng)-https://www.pxcodes.com
1、分析網(wǎng)頁(yè)首先打開*網(wǎng),*網(wǎng)傳送門,點(diǎn)擊“視聽(tīng)中心”里面的“原畫壁紙”
hNC少兒編程網(wǎng)-https://www.pxcodes.com
進(jìn)入到原畫壁紙頁(yè)面后,選擇一個(gè)壁紙,進(jìn)行檢查。hNC少兒編程網(wǎng)-https://www.pxcodes.com
我發(fā)現(xiàn),對(duì)于不同的分辨率,有不同的鏈接對(duì)應(yīng),而我檢查的這張圖有六個(gè)分辨率,是不是所有的圖片都是這樣呢?
后來(lái)我發(fā)現(xiàn),并不是!
如上所示,有個(gè)圖甚至只有四個(gè)分辨率,并且,每張圖的分辨率的位置對(duì)應(yīng)還不一致,那該怎么提取原畫鏈接呢?hNC少兒編程網(wǎng)-https://www.pxcodes.com
A:利用xpath,根據(jù)文本內(nèi)容提取節(jié)點(diǎn)hNC少兒編程網(wǎng)-https://www.pxcodes.com
a = lists[i].xpath('./p/p/a[contains(text(), "1920x1080")]')[0]這樣就能提取到分辨率為“1920x1080”的a節(jié)點(diǎn)了。hNC少兒編程網(wǎng)-https://www.pxcodes.com
Q:lists[i]是什么?
A:看了完整代碼就知道了。hNC少兒編程網(wǎng)-https://www.pxcodes.com
運(yùn)行結(jié)果如下:hNC少兒編程網(wǎng)-https://www.pxcodes.com
四、合成視頻hNC少兒編程網(wǎng)-https://www.pxcodes.com
通過(guò)合成視頻,可以慢慢欣賞爬取下來(lái)的原畫,舒服極了。hNC少兒編程網(wǎng)-https://www.pxcodes.com
代碼如下:hNC少兒編程網(wǎng)-https://www.pxcodes.com
import cv2import os# 輸出視頻的保存路徑video_dir = 'D:/yinyangshi/result.mp4'# 幀率fps = 0.2# 圖片尺寸img_size = (1920, 1080)fourcc = cv2.VideoWriter_fourcc('M', 'P', '4', 'V') # opencv3.0 mp4會(huì)有警告但可以播放videoWriter = cv2.VideoWriter(video_dir, fourcc, fps, img_size)img_files = os.listdir('D:/yinyangshi/')for i in range(1, 397): img_path = 'D:/yinyangshi/tupian/' + '{}.jpg'.format(i) frame = cv2.imread(img_path) frame = cv2.resize(frame, img_size) # 生成視頻 圖片尺寸和設(shè)定尺寸相同 videoWriter.write(frame) # 寫進(jìn)視頻里 print(f'======== 按照視頻順序第{i}張圖片合進(jìn)視頻 ========')videoWriter.release() # 釋放資源注意:合成視頻時(shí),圖片的保存路徑和視頻的生成路徑不能包含中文!!!hNC少兒編程網(wǎng)-https://www.pxcodes.com
<iframe id="pOhrb3iY-1614224431256" src="https://player.bilibili.com/player.html?aid=971758024" allowfullscreen="true" data-mediaembed="bilibili"></iframe> hNC少兒編程網(wǎng)-https://www.pxcodes.com
陰陽(yáng)師原畫合集hNC少兒編程網(wǎng)-https://www.pxcodes.com
相關(guān)免費(fèi)學(xué)習(xí)推薦:python教程(視頻)hNC少兒編程網(wǎng)-https://www.pxcodes.com
以上就是Python簡(jiǎn)單地實(shí)現(xiàn)一鍵提取陰陽(yáng)師原畫方法的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注少兒編程網(wǎng)其它相關(guān)文章!hNC少兒編程網(wǎng)-https://www.pxcodes.com

- 上一篇
介紹python 數(shù)據(jù)抓取三種方法
簡(jiǎn)介免費(fèi)學(xué)習(xí)推薦:python視頻教程三種數(shù)據(jù)抓取的方法正則表達(dá)式(re庫(kù))BeautifulSoup(bs4)lxml*利用之前構(gòu)建的下載網(wǎng)頁(yè)函數(shù),獲取目標(biāo)網(wǎng)頁(yè)的html,我們以https://guojiadiqu.bmcx.com/AFG__guojiayudiqu/為例,獲取html。fromge
- 下一篇
介紹Python面向?qū)ο蟀鎸W(xué)員管理系統(tǒng)
簡(jiǎn)介免費(fèi)學(xué)習(xí)推薦:python視頻教程文章目錄Python面向?qū)ο蟀鎸W(xué)員管理系統(tǒng)目標(biāo)一.系統(tǒng)需求二.準(zhǔn)備程序文件2.1分析2.2創(chuàng)建程序文件三.書寫程序3.1student.py3.1.2程序代碼3.2managerSystem.py3.2.1定義類3.2.2管理系統(tǒng)框架3.3main.py3.4定義系