爬蟲——爬取梨視頻


import requests     # 導入爬蟲模塊
import re           # 導入正則模塊
import os           # 導入文件操作模塊

a = 1           # 主程序判斷結束的錨
start = 0       # 記錄爬取位置

# 主程序循環
while a:

    v = []      # 存放視頻地址

    # 拼接地址,爬取網頁內容
    url = 'https://www.pearvideo.com/category_loading.jsp?reqType=5&categoryId=1&start=' + str(start)
    res = requests.get(url = url)

    # 使用正則獲取視頻名稱
    vnz = '<div class="vervideo-title">(.*?)</div>'
    vn = re.findall(vnz,res.text)

    # 使用正則獲取HTML中的視頻超鏈接
    vz = '<a href="(.*?)" class="vervideo-lilink actplay">'
    vu = re.findall(vz,res.text)

    for  i in vu:
        # 循環取出視頻超鏈接,拼接並爬取網頁內容
        vurl = 'https://www.pearvideo.com/' + i
        res1 = requests.get(url = vurl)

        # 找到網頁中的視頻地址,使用正則取出並存入視頻列表(v)中
        vz2 = 'srcUrl="(.*?)"'
        vurl1 = re.findall(vz2,res1.text)
        v.append(vurl1[0])

    for i in range(len(v)):
        # 循環取出視頻名稱並拼接成文件路徑
        add = os.path.join('D:\梨視頻', vn[i]) + '.mp4'
        with open(add,'wb') as f:
            # 循環取出視頻地址然后獲取視頻數據,並用數據流存入文件中
            for line in requests.get(v[i]).iter_content():
                f.write(line)

    # 判斷視頻文件中的視頻地址數量是否為12個
    # 是:繼續循環    否:結束循環
    if len(v) == 12:
        start = int(start) + 12
    else:
        print("結束")
        a = None


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM