💌实现思路

1.爬取解析网址解析视频url

image-20200429231444665

2.分析视频解析流程,拼接最终解析地址

视频解析url

3.制作gui界面

image-20200429232443094

请自动忽略界面🙄

4.打包成exe可执行文件

这里我使用的是pyinstaller。

安装pyinstaller:

pip install pyinstaller

打包exe方式,直接在.py文件同目录下cmd执行:

pyinstaller vipvideo.py

这是最简单的打包方式。

.exe文件在根目录下dist/vipvideo下

🎡代码实现

import requests
from lxml import etree
import tkinter as tk
import webbrowser

# 画板
root = tk.Tk()
root.title('HeZ电影')  # 标题
root.geometry('550x280')  # 长宽  字母x表示乘

gui = tk.Label(root, text='方法:复制vip电影地址到链接栏,选中一个接口点击播放', font=("宋体", 8))
gui.grid(row=1, column=0)
gui1 = tk.Label(root, text='播放接口', font=("Arial", 12))
gui1.grid(row=3, column=0)
gui2 = tk.Label(root, text='播放链接', font=("Arial", 12))
gui2.grid(row=6, column=0)
t1 = tk.Entry(root, text='', width=50)
t1.grid(row=7, column=0)


def get_url():
    # 解析地址
    url = 'http://www.qmaile.com/'
    response = requests.get(url)
    # 提取解析url
    html = etree.HTML(response.text)
    target = html.xpath('//option/@value')
    # 有一个重复的url,去重
    target = list(set(target))

    return target


# 单选按钮
var = tk.StringVar()
# 默认选中
var.set(get_url()[0])

for i in range(len(get_url())):
    tk.Radiobutton(root, text='播放接口%s' % (i + 1),variable=var, value=get_url()[i]).grid(row=i, column=1)


def del_text():
    # 从头删到尾
    t1.delete(0, 'end')


def bf():
    webbrowser.open(var.get() + t1.get())
    # webbrowser.open()


# 播放
btn_play = tk.Button(root, text='播放', font=("Arial", 12), width=6, command=bf)
btn_play.grid(row=7, column=1)

# 清除
btn_del = tk.Button(root, text='清除', font=("Arial", 12), width=6, command=del_text)  # command调用函数名
btn_del.grid(row=7, column=2)
# 消息循环
root.mainloop()

🕶总结

  • 程序运行比较慢。
  • 代码没优化,界面就不提了。
  • 接口如果卡顿,可以切换一个试试。

仅供个人学习参考。


一个可爱的人