教你用Python+PyQt5制作一款视频数据下载小工具

点击上方“萝卜大杂烩”,选择“星标”公众号


超级无敌干货,第一时间送达!!!

大家好,我是萝卜哥。

目前,市场上有大量 Python图形用户界面(GUI)开发框架可供选择,如wxpython 、pyqt5、Gtk、Tk等。本文将用Python结合PyQt5制作一款B站视频数据下载器,可以通过输入关键字、页码以及选择存储路径后,下载相应的数据,演示效果如下:

以下将详细介绍这个GUI工具的制作方法

开发环境

Python3  
Pycharm  
PyQt5  
Qt Designer  
requests  

准备工作

首先,新建一个bilibili.py文件。获取B站视频数据的爬虫代码相对简单,只要设置好url的keyword和page参数,即可轻松获取数据。以下贴出完整代码:

# -*- coding = uft-8 -*-  
# @Time : 2020-11-11  
# @Author : 「菜J学Python」J哥  
  
import requests  
from lxml import etree  
import time  
import random  
import csv  
  
def get_target(keyword,page):  
    for i in range(1,page + 1):  
        headers = {'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36'}  
        url = 'https://search.bilibili.com/all?keyword={0}&from_source=nav_suggest_new0&page={1}'.format(keyword,page)  
        html = requests.get(url.format(i),headers = headers)  
        bs = etree.HTML(html.text)  
            items = bs.xpath('//li[@class = "video-item matrix"]')  
            for item in items:  
                title = item.xpath('div[@class = "info"]/div/a/@title')[0]  
                click = item.xpath('div[@class = "info"]/div[3]/span[1]/text()')[0].strip('\n        ').replace("万","")  
                danmu = item.xpath('div[@class = "info"]/div[3]/span[2]/text()')[0].strip('\n        ')  
                date = item.xpath('div[@class = "info"]/div[3]/span[3]/text()')[0].strip('\n        ')  
                up = item.xpath('div[@class = &#
  • 21
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值