使用selenium抓取最右搞笑视频存入本地python3

来源:互联网 发布:linux 查看mysql版本 编辑:程序博客网 时间:2024/05/21 11:11
import os  # 使用系统模块创建文件夹from time import sleep  # 打开浏览器后休眠时间 也可以是用selenium中自己的上方法from selenium.webdriver.support.ui import WebDriverWait  # 这个是selenium中自带的方法import requests  # 使用requests获取抓取到的视频链接from lxml import etree  # 使用xpath查找元素from selenium import webdriver  # 使用selenium中的webdriver中的方法获取js加载的也米娜# 自定义的类class ZuiYou(object):    # 初始化    def __init__(self):        # 自定义你要抓取的链接url 这个链接是最右上面的搞笑视频        self.url = 'https://zuiyou.ixiaochuan.cn/home'        # 使用的chrome浏览器        self.driver = webdriver.Chrome()        # 定义你抓取到的视频放到哪里        self.path = 'D://搞笑视频'    # 定义函数得到数据    def get_yuan(self):        # 判断一下你d盘下有没有这个路径有的话打开没有的话创建        if not os.path.exists(self.path):            os.mkdir(self.path)  # 创建这个文件        os.chdir(self.path)  # 打开这个文件        self.driver.get(self.url)  # 得到你到解析的网页        self.driver.maximize_window()  # 浏览器放大        sleep(1)  # 休眠一秒        self.driver.execute_script('window.scrollBy(0, 30000)')  # 下拉滚动条        sleep(3)        # 得到你的整个视频那一块的代码        video = etree.HTML(self.driver.page_source).xpath(            '//*[@id="app"]/div/div/div[1]/div[2]/div/div[1]/div[1]/div/div[2]')        # 遍历你得到的整个视频        for i in video:            # 得到作者的名称            title = i.xpath('div[1]/div/text()')            if not os.path.exists(title[0]):                os.mkdir(title[0])  # 以作者的名称创建文件夹            for j in i.xpath('div[2]/a/@href'):  # 找到视频的链接                request = requests.get(j).content  # 得到视频                with open(title[0] + '\\' + j[-8:] + '.mp4', 'wb') as e:                    print('写入的是%s' % title)                    e.write(request)  # 写入视频# 代码调试片段if __name__ == '__main__':    SJ = ZuiYou()    SJ.get_yuan()