最新视频连接解析地址

举报
红目香薰 发表于 2023/01/23 17:00:29 2023/01/23
【摘要】 ​ 这里用一个开篇进行处理:如果HTML一直返回JavaScript怎么办?在网上都是各种使用谷歌的模拟器进行处理,但都不是我想要的。所以我就找啊找找啊找,然后就找到了。下面是我在2个小时内找到的方法,挨个测试出来的。不容易,是否应该关注三连一下呢?但是前面需要用一些词语盖过去。先说一下打包的参数吧:pyinstaller常用参数-F 只在dist中产生一个exe文件。-w 只对window...

 这里用一个开篇进行处理:

如果HTML一直返回JavaScript怎么办?

在网上都是各种使用谷歌的模拟器进行处理,但都不是我想要的。

所以我就找啊找找啊找,然后就找到了。

下面是我在2个小时内找到的方法,挨个测试出来的。

不容易,是否应该关注三连一下呢?

但是前面需要用一些词语盖过去。

先说一下打包的参数吧:

pyinstaller常用参数

-F 只在dist中产生一个exe文件。
-w 只对windows有效,不使用控制台。
-D 默认选项,除了exe外,还会在在dist中生成很多依赖文件,推荐使用。
-i设置好看的ico格式的图标,加上该参数,指定图标路径。
-p 设置导入路径

打包:

pyinstaller -F -w -p C:\Users\qwe84\AppData\Local\Programs\Python\Python39\Lib -i D:\save\study\python\pythonProject\python.ico GetDownRain.py -n "视频下载器"

编辑

测试用的:  

import requests
import re

import os

oldUrl = "URL"
headers = {
    "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36"
}
short_url = re.findall('(http[|s]?://[^\s]*/)', oldUrl)[0]
url = requests.get(url=short_url, headers=headers).url
item_id = url.split('/')[5][0:19]
url = "https://www.iesdouyin.com/aweme/v1/web/aweme/detail/?aweme_id={0}".format(item_id)
html = requests.get(url, headers=headers)
title = html.json()['aweme_detail']['desc']

video_url = html.json()['aweme_detail']['video']['bit_rate'][0]['play_addr']['url_list'][0]
mp4 = requests.get(video_url, headers=headers).content

saveUrl = r"{0}.mp4".format(title)
file = open(saveUrl, "wb+")
file.write(mp4)
file.close()

打包用的:

import requests
import re

import os
from tkinter import *

import tkinter.messagebox as messagebox

root = Tk()

screenwidth = root.winfo_screenwidth()
screenheight = root.winfo_screenheight()
dialog_width = 800
dialog_height = 100
# 前两个参数是窗口的大小,后面两个参数是窗口的位置
root.geometry(
    "%dx%d+%d+%d" % (dialog_width, dialog_height, (screenwidth - dialog_width) / 2, (screenheight - dialog_height) / 2))

root.title("(红目香薰提供):")
Label(root, text='url:').grid(row=0, column=0)
e = Entry(root, width=90)
e.grid(row=0, column=3, padx=10, pady=5)

root.resizable(height=False, width=False)

def show():
    try:
        oldUrl = e.get()
        headers = {
            "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36"
        }
        short_url = re.findall('(http[|s]?://[^\s]*/)', oldUrl)[0]
        url = requests.get(url=short_url, headers=headers).url
        item_id = url.split('/')[5][0:19]
        url = "https://www.iesdouyin.com/aweme/v1/web/aweme/detail/?aweme_id={0}".format(item_id)
        html = requests.get(url, headers=headers)
        title = html.json()['aweme_detail']['desc']

        video_url = html.json()['aweme_detail']['video']['bit_rate'][0]['play_addr']['url_list'][0]
        mp4 = requests.get(video_url, headers=headers).content
        # 开始下载
        saveUrl = r"{0}.mp4".format(title)
        file = open(saveUrl, "wb+")
        file.write(mp4)
        file.close()
        os.system("explorer .")
        messagebox.showinfo("提示", "{0}下载完毕!".format(title))
    except:
        messagebox.showinfo("提示", "错误路径")


Button(root, text='下载视频', width=10, command=show) \
    .grid(row=3, column=0, sticky=W, padx=10, pady=5)

mainloop()


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。