91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python怎樣實現一鍵提取陰陽師原畫

發布時間:2021-02-26 10:56:23 來源:億速云 閱讀:226 作者:清風 欄目:編程語言

本文將為大家詳細介紹“Python怎樣實現一鍵提取陰陽師原畫”,內容步驟清晰詳細,細節處理妥當,而小編每天都會更新不同的知識點,希望這篇“Python怎樣實現一鍵提取陰陽師原畫”能夠給你意想不到的收獲,請大家跟著小編的思路慢慢深入,具體內容如下,一起去收獲新知識吧。

python是什么意思

Python是一種跨平臺的、具有解釋性、編譯性、互動性和面向對象的腳本語言,其最初的設計是用于編寫自動化腳本,隨著版本的不斷更新和新功能的添加,常用于用于開發獨立的項目和大型項目。

xpath–簡單的爬蟲實例–提取陰陽師原畫壁紙

文章目錄



    • 1、分析網頁

    • 2、完整代碼實現

    • 一、前言

    • 二、需要用到的庫

    • 三、實現過程


    • 四、合成視頻

一、前言

很多人都玩過陰陽師吧,別的不談,陰陽師的原畫制作的那是相當地精細,閑暇之余,用幾行簡單的代碼爬取下來,豈不美哉?

二、需要用到的庫

import requestsfrom lxml import etreefrom fake_useragent import UserAgentimport os

沒用安裝庫的小伙伴,可以看一下我之前寫的這篇文章,里面有很多國內源的鏈接,方便你的下載。

傳送門

三、實現過程

1、分析網頁

首先打開官網,官網傳送門,點擊“視聽中心”里面的“原畫壁紙

進入到原畫壁紙頁面后,選擇一個壁紙,進行檢查。

Python怎樣實現一鍵提取陰陽師原畫
我發現,對于不同的分辨率,有不同的鏈接對應,而我檢查的這張圖有六個分辨率,是不是所有的圖片都是這樣呢?
后來我發現,并不是!
Python怎樣實現一鍵提取陰陽師原畫
如上所示,有個圖甚至只有四個分辨率,并且,每張圖的分辨率的位置對應還不一致,那該怎么提取原畫鏈接呢?

A:利用xpath,根據文本內容提取節點

a = lists[i].xpath('./p/p/a[contains(text(), "1920x1080")]')[0]

這樣就能提取到分辨率為“1920x1080”的a節點了。

Q:lists[i]是什么?
A:看了完整代碼就知道了。

2、完整代碼實現
import requestsfrom lxml import etreefrom fake_useragent import UserAgentimport os

path = 'D:/陰陽師'if not os.path.exists(path):
    os.mkdir(path)# 隨機產生請求頭ua = UserAgent(verify_ssl=False, path='fake_useragent.json')url = 'https://yys.163.com/media/picture.html'  # 原畫壁紙的頁面鏈接response = requests.get(url=url).text
html = etree.HTML(response)lists = html.xpath('/html/body/p[2]/p[3]/p[1]/p[3]/p[2]/p')num = 1for i in range(len(lists)):
    a = lists[i].xpath('./p/p/a[contains(text(), "1920x1080")]')[0]  # 根據文本內容鎖定節點a
    image_url = a.xpath('./@href')[0]  # 獲取原畫壁紙鏈接
    image_data = requests.get(url=image_url).content
    image_name = '{}.jpg'.format(num)  # 給每張圖片命名
    save_path = path + '/' + image_name  # 圖片的保存地址
    with open(save_path, 'wb') as f:
        f.write(image_data)
        print(image_name, '=======================>下載成功!!!')
        f.close()
        num += 1

運行結果如下:
Python怎樣實現一鍵提取陰陽師原畫
Python怎樣實現一鍵提取陰陽師原畫

四、合成視頻

通過合成視頻,可以慢慢欣賞爬取下來的原畫,舒服極了。

代碼如下:

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會有警告但可以播放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)   # 生成視頻   圖片尺寸和設定尺寸相同
    videoWriter.write(frame)      # 寫進視頻里
    print(f'======== 按照視頻順序第{i}張圖片合進視頻 ========')videoWriter.release()   # 釋放資源

注意:合成視頻時,圖片的保存路徑和視頻的生成路徑不能包含中文!!!

如果你能讀到這里,小編希望你對“Python怎樣實現一鍵提取陰陽師原畫”這一關鍵問題有了從實踐層面最深刻的體會,具體使用情況還需要大家自己動手實踐使用過才能領會,如果想閱讀更多相關內容的文章,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

北川| 永靖县| 潮州市| 潼南县| 孝昌县| 洱源县| 永康市| 儋州市| 西和县| 德保县| 乌拉特中旗| 万年县| 禄丰县| 沙雅县| 阆中市| 东宁县| 迁安市| 泽库县| 西充县| 桐梓县| 江油市| 三河市| 龙泉市| 平阳县| 湟源县| 土默特右旗| 南靖县| 惠东县| 延安市| 中宁县| 寿光市| 石渠县| 汶上县| 屯留县| 南木林县| 广平县| 金寨县| 镇宁| 韶山市| 塔城市| 天柱县|