一键生成视频并批量上传视频抖音、bilibili、腾讯(已打包)
GenerateAndAutoupload
Github地址:https://github.com/cmdch2017/GenerateAndAutoupload
如何下载(找到最新的release)
https://github.com/cmdch2017/GenerateAndAutoupload/releases/download/v1.0.1/v1.0.1.zip
启动必知道
conf.py 这里配置了chrome浏览器的启动位置,你的项目一定要安装chrome C:\Program Files\Google\Chrome\Application\chrome.exe
项目图片示例
v1.0.1
该项目在上面的项目基础上增加和删除了一些功能旨在自动生成视频并发布视频到各个社交媒体平台并打包程序
how to use
默认当天的日期,网上找到的素材按照黏贴到空白处点击保存按钮,然后点击生成选定日期视频,确保生成cookies后,再点击一键上传即可。
生成的视频如下所示:
当然你也不一定需要用到生成视频的功能,只需要批量上传,那你就点击当日文件夹按钮
💾Installation
pip install -r requirements.txt
playwright install chromium firefox
非程序员,新手级教程
🐇 About
The project for my own project extracted, my release strategy is timed release (released a day in advance), so the release part of the event are used for the next day time!
If you need to release it immediately, you can study the source code or ask me questions.
如果你有需求立即发布,可自行研究源码或者向我提问
核心模块解释
1. 视频文件准备(video prepare)
filepath 本地视频目录,目录包含(filepath Local video directory containing)
- 视频文件(video files)
- 视频meta信息txt文件(video meta information txt file)
举例(for example):
file:2023-08-24_16-29-52 - 这位勇敢的男子为了心爱之人每天坚守 .mp4
meta_file:2023-08-24_16-29-52 - 这位勇敢的男子为了心爱之人每天坚守 .txt
meta_file 内容(content):
这位勇敢的男子为了心爱之人每天坚守 🥺❤️🩹
#坚持不懈 #爱情执着 #奋斗使者 #短视频
Usage
- 设置conf 文件中的
LOCAL_CHROME_PATH
(在douyin、视频号 tiktok可能出现chromium 不兼容的各种问题,建议设置本地的chrome) - 这里分割出来3条路
- 可自行研究源码,免费、任意 穿插在自己的项目中
- 可参考下面的各个平台的使用指南,
examples
文件夹中有各种示例代码 - 使用cli 简易使用(支持tiktok douyin 视频号)
cli 用法
python cli_main.py <platform> <account_name> <action: upload, login> [options]
查看详细的参数说明使用:
python cli_main.py -h
usage: cli_main.py [-h] platform account_name action ...Upload video to multiple social-media.positional arguments:platform Choose social-media platform: douyin tencent tiktokaccount_name Account name for the platform: xiaoAaction Choose actionupload upload operationlogin login operationwatch watch operationoptions:-h, --help show this help message and exit
示例
python cli_main.py douyin test login
douyin平台,账号名为test,动作为loginpython cli_main.py douyin test upload "C:\Users\duperdog\Videos\2023-11-07_05-27-44 - 这位少女如梦中仙... .mp4" -pt 0
douyin平台, 账号名为test, 动作为upload, 视频文件(需对应的meta文件,详见上), 发布方式(pt):0 立即发布python cli_main.py douyin test upload "C:\Users\superdog\Videos\2023-11-07_05-27-44 - 这位少女如梦中仙... .mp4" -pt 1 -t "2024-6-14 12:00"
douyin平台, 账号名为test, 动作为upload, 视频文件, 发布方式(pt):1 定时发布, 发布时间(t): 2024-6-14 12:00
各平台详细说明
1. 抖音
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/91e14fa289a44d5a8787bc554bae5378.png)使用playwright模拟浏览器行为
抖音前端实现,诸多css class id 均为随机数,故项目中locator多采用相对定位,而非固定定位
- 准备视频目录结构
- cookie获取:get_douyin_cookie.py 扫码登录
- 上传视频:upload_video_to_douyin.py
其他部分解释:
douyin_setup handle 参数为True,为手动获取cookie False 则是校验cookie有效性generate_schedule_time_next_day 默认从第二天开始(此举为避免选择时间的意外错误)
参数解释:
- total_videos 本次上传视频个数(我调整了上限为10)
- videos_per_day 每日上传视频数量(我调整了上限为10)
- daily_times 视频发布时间 默认10、11、12、13、14、15、16、17、18、19点
- start_days 从第N天开始
2023年12月15日补充:使用chromium可能会出现无法识别视频封面图片的情况
解决方案:
- 下载chrome
- 找到chrome的安装目录
- 将本地chrome 路径conf文件中 LOCAL_CHROME_PATH = “xxx/xxx/chrome.exe”
参考项目:
- https://github.com/wanghaisheng/tiktoka-studio-uploader
- https://github.com/Superheroff/douyin_uplod
- https://github.com/lishang520/DouYin-Auto-Upload.git
2. 视频号
使用playwright模拟浏览器行为
- 准备视频目录结构
- cookie获取:get_tencent_cookie.py 扫码登录
- 上传视频:upload_video_to_tencent.py
其他部分解释:
参考上面douyin_setup 配置
3. bilibili
该实现,借助biliup的biliup-rs,再次感谢。
- 准备视频目录结构
- cookie获取:
biliup.exe -u account.json login
选项你喜欢的登录方式 - 上传视频:upload_video_to_bilibili.py
解释与注意事项:
bilibili cookie 长期有效(至少我运行2年以来是这样的)
其他平台 诸如linux mac 服务器运行 请自行研究
参考项目:
- https://github.com/biliup/biliup-rs
打包项目成exe应用
打包前你的项目结构
修改main.spec,其中pathex是你项目放的位置,我的项目放到了D:\Demos\social-auto-upload-main
点击生成exe.bat,这个时候生成了dist文件夹,如上图所示,然后你能放dist到任意一个目录,然后如下图所示的exe文件同一目录下放这些文件。项目打包后的成品大概这个样子,其中uploader文件夹里放account.json,postcards/2024-08-01/*.mp4(当天日期)放视频,source下放texts.json(文字转视频中文字存放的位置)
参考项目:
- https://github.com/wkaisertexas/tiktok-uploader
- https://github.com/dreammis/social-auto-upload(基于这个代码基础上开发)
打赏
ffmpeg生成文字转视频
ffmpeg安装教程https://www.cnblogs.com/wwwwariana/p/18191233
相关文章:
一键生成视频并批量上传视频抖音、bilibili、腾讯(已打包)
GenerateAndAutoupload Github地址:https://github.com/cmdch2017/GenerateAndAutoupload 如何下载(找到最新的release) https://github.com/cmdch2017/GenerateAndAutoupload/releases/download/v1.0.1/v1.0.1.zip 启动必知道 conf.py …...
Python WSGI服务器库之gunicorn使用详解
概要 在部署 Python Web 应用程序时,选择合适的 WSGI 服务器是关键的一步。Gunicorn(Green Unicorn)是一个高性能、易于使用的 Python WSGI HTTP 服务器,适用于各种应用部署场景。Gunicorn 设计简洁,支持多种工作模式,能够有效地管理和处理大量并发请求。本文将详细介绍…...
Java编程达人:每日一练,提升自我
目录 题目1.以下哪个单词不是 Java 的关键字?2.boolean 类型的默认值为?3.以下代码输出正确的是?4.以下代码,输出结果为:5.以下代码输出结果为:6.以下代码输出结果为?7.float 变量的默认值为&am…...
(35)远程识别(又称无人机识别)(二)
文章目录 前言 4 ArduRemoteID 5 终端用户数据的设置和使用 6 测试 7 为OEMs添加远程ID到ArduPilot系统的视频教程 前言 在一些国家,远程 ID 正在成为一项法律要求。以下是与 ArduPilot 兼容的设备列表。这里(here)有一个关于远程 ID 的很好解释和常见问题列表…...
提供三方API接口、调用第三方接口API接口、模拟API接口(一)通过signature签名验证,避免参数恶意修改
为什么要设计安全的api接口 运行在外网服务器的接口暴露在整个互联网中,可能会受到各种攻击,例如恶意爬取服务器数据、恶意篡改请求数据等,因此需要一个机制去保证api接口是相对安全的。 本项目api接口安全设计 本项目api接口的安全性主要…...
CDO学习
1.备份instie.mdb文件 2....
奥运会Ⅱ---谁会先抢走你的工作?
Devin AI 与 Microsoft AutoDev,谁会先抢走你的工作? 软件开发领域正处于一场革命的风口浪尖。Devin AI和Microsoft AutoDev 的出现,是人工智能编码领域的两项突破性进步,有望重塑软件构建方式。但是,在如此截然不同的…...
用Python打造精彩动画与视频,4.3 创建动态文本和字幕
第四章:深入MoviePy 4.3 创建动态文本和字幕 在视频编辑中,动态文本和字幕是传达信息、增强观众体验的重要元素。MoviePy 提供了丰富的工具来添加和自定义文本和字幕,包括字体、颜色、动画效果等。本节将介绍如何在视频中添加动态文本和字幕…...
spring boot + vue3 接入钉钉实现扫码登录
1:准备工作 1.1:进入钉钉开放平台创建开发者应用。应用创建和类型介绍,参考下方。 应用类型介绍 - 钉钉开放平台 (dingtalk.com) 应用能力介绍 - 钉钉开放平台 (dingtalk.com) 扫码登录第三方网站 - 钉钉开放平台 (dingtalk.com) 1.2&…...
二叉树构建(从3种遍历中构建)python刷题记录
R3-树与二叉树篇. 目录 从前序与中序遍历序列构造二叉树 算法思路: 灵神套路 从中序与后序遍历序列构造二叉树 算法思路: 灵神套路 从前序和后序遍历序列构造二叉树 算法思路: 灵神套路 从前序与中序遍历序列构造二叉树 算法…...
计算机网络中协议与报文的关系
协议和报文在网络通信中扮演着不同的角色,但它们是紧密相关的。 协议是计算机网络中实现通信的“约定”,它规定了计算机之间如何进行通信,包括数据传输的格式、步骤和规则。协议确保了不同厂商的设备、不同的CPU和操作系统之间的计算机能够相…...
机器学习 第8章-集成学习
机器学习 第8章-集成学习 8.1 个体与集成 集成学习(ensemble learning)通过构建并结合多个学习器来完成学习任务,有时也被称为多分类器系统(multi-classifersystem)、基于委员会的学习(committee-based learning)等。 图8.1显示出集成学习的一般结构:先产生一组“…...
Docker 安装 GitLab教程
本章教程,主要介绍如何在Docker 中安装GitLab。 GitLab 是一个开源的 DevOps 平台,提供了一整套工具,用于软件开发生命周期的各个阶段,从代码管理到 CI/CD(持续集成和持续交付/部署),再到监控和安全分析。 一、拉取镜像 docker pull gitlab/gitlab-ce:latest二、创建 G…...
如何在生产环境中千万表添加索引并保证数据一致性
技术分享文档:如何在生产环境中千万表添加索引并保证数据一致性 目录 引言添加索引的挑战解决方案概述详细步骤 4.1 创建新表并添加索引 4.2 批量导入数据 4.3 处理增量数据 4.4 表名切换确保数据一致性 5.1 暂停写操作 5.2 记录增量数据 5.3 应用增量数据设置回滚…...
Uni-APP页面跳转问题(十六)
【背景】最近在做公司一个PAD端,谁被点检功能,主要时为了移动端点检设备和打印标签,需求比较简单就是扫描设备二维码,问题在于扫描后要能够重复进行多设备的扫描;早期开发的设备点检能够满足需求但是当连续扫描五六十个设备后,APP卡死,必须重启才能使用。 界面原图: 输…...
Java新特性(二) Stream与Optional详解
Java8新特性(二) Stream与Optional详解 一. Stream流 1. Stream概述 1.1 基本概念 Stream(java.util.stream) 是Java 8中新增的一种抽象流式接口,主要用于配合Lambda表达式提高批量数据的计算和处理效率。Stream不是…...
springboot系列教程(三十一):springboot整合Nacos组件,环境搭建和入门案例详解
一、Nacos基础简介 1、概念简介 Nacos 是构建以“服务”为中心的现代应用架构,如微服务范式、云原生范式等服务基础设施。聚焦于发现、配置和管理微服务。Nacos提供一组简单易用的特性集,帮助开发者快速实现动态服务发现、服务配置、服务元数据及流量管…...
Traefik系列
一、入门Traefik系列——基础简介 官方文档 https://doc.traefik.io/traefik/[1] 简介 Traefik是一个为了让部署微服务更加便捷而诞生的现代HTTP反向代理、负载均衡工具。它支持多种后台 (Docker, Swarm, Kubernetes, Marathon, Mesos, Consul, Etcd, Zookeeper, BoltDB, Re…...
【力扣】3128. 直角三角形 JAVA
一、题目描述 给你一个二维 boolean 矩阵 grid 。 请你返回使用 grid 中的 3 个元素可以构建的 直角三角形 数目,且满足 3 个元素值 都 为 1 。 注意: 如果 grid 中 3 个元素满足:一个元素与另一个元素在 同一行,同时与第三个元素…...
如何全面提升企业安全意识
引言 在当今数字化和信息化的时代,网络安全已成为企业运营不可忽视的核心问题。员工的安全意识直接关系到企业的数据安全和整体网络防护能力。即使企业采用了先进的安全技术,如果员工缺乏足够的安全意识,仍然容易成为攻击者的突破口。本文将…...
全球支持与无界服务:跨越地域的数据采集与分析
在当今企业运营中,IT 监控系统的全球支持和无界服务变得至关重要。随着企业业务的全球化扩展,传统的监控工具往往因地域限制而无法满足全球统一监控的需求。观测云通过其全球部署的数据采集点和多语言支持,确保了无论数据产生于何处ÿ…...
Java面试八股之简述spring boot的目录结构
简述spring boot的目录结构 Spring Boot 项目遵循标准的 Maven 或 Gradle 项目布局,并且有一些约定的目录用于组织不同的项目组件。下面是一个典型的 Spring Boot 项目目录结构: src/main/java:包含所有的 Java 源代码,通常按包组…...
python == 与 is区别
刷到一个面试题 python中 与 is 的区别 根据以往的经验,这个问题应该考察的是运算符根据地址 还是值进行比较的 s1 [a] s2 [a] s3 s1 print(s1 s2) # True 值相等 print(s1 s3) # True 值相等 print(s1 is s2) # False 值相等,引用地址不相…...
STM32学习笔记1---LED,蜂鸣器
目录 GPIO LED 蜂鸣器 RCC外设 GPIO外设 总概 操作STM32的GPIO 代码 LED闪烁 LED流水灯 蜂鸣器! 连接方式 GPIO GPIO输出:向外驱动控制 GPIO输入:读取,捕获(信息)(控制)…...
动手学强化学习 第 15 章 模仿学习 训练代码
基于 https://github.com/boyu-ai/Hands-on-RL/blob/main/%E7%AC%AC15%E7%AB%A0-%E6%A8%A1%E4%BB%BF%E5%AD%A6%E4%B9%A0.ipynb 理论 模仿学习 修改了警告和报错 运行环境 Debian GNU/Linux 12 Python 3.9.19 torch 2.0.1 gym 0.26.2 运行代码 #!/usr/bin/env pythonimpor…...
第一阶段面试问题(前半部分)
1. 进程和线程的概念、区别以及什么时候用线程、什么时候用进程? (1)线程 线程是CPU任务调度的最小单元、是一个轻量级的进程 (2)进程 进程是操作系统资源分配的最小单元 进程是一个程序动态执行的过程,包…...
《数学教学通讯》是一本怎样的刊物?投稿难吗?
《数学教学通讯》是一本怎样的刊物?投稿难吗? 《数学教学通讯》是一本具有较高学术价值的教育类刊物。它创刊于 1979 年,由西南大学主管,西南大学数学与统计学院、重庆市数学学会主办,出版周期为旬刊。该刊物在国内外…...
<机器学习> K-means
K-means定义 K-means 是一种广泛使用的聚类算法,旨在将数据集中的点分组为 K 个簇(cluster),使得每个簇内的点尽可能相似,而不同簇的点尽可能不同。K-means 算法通过迭代的方式,逐步优化簇的分配和簇的中心…...
我们如何优化 Elasticsearch Serverless 中的刷新成本
作者:来自 Elastic Francisco Fernndez Castao, Henning Andersen 最近,我们推出了 Elastic Cloud Serverless 产品,旨在提供在云中运行搜索工作负载的无缝体验。为了推出该产品,我们重新设计了 Elasticsearch,将存储与…...
MySQL半同步复制
1.MySQL主从复制模式 1.1异步复制 异步复制为 MySQL 默认的复制模式,指主库写 binlog、从库 I/O 线程读 binlog 并写入 relaylog、从库 SQL 线程重放事务这三步之间是异步的。 异步复制的主库不需要关心备库的状态,主库不保证事务被传输到从库…...
地图网站建设/重庆人力资源和社会保障网官网
实现我自己电脑和我的阿里云服务器的通信,首先要在阿里云上面部署我的项目,关于如何部署Maven项目,参考https://blog.csdn.net/newbaby2012/article/details/118498642 启动以后,我在本地把ChatClient的目的地址改成了我的阿里云公…...
wordpress评论推广/太原优化排名推广
模板介绍 医疗保健服务宣传和医疗咨询服务PPT模板-优页文档。一套,疫情防护,幻灯片模板,内含青色,蓝色多种配色,风格设计,动态播放效果,精美实用。 希望下面这份精美的PPT模板能给你带来帮助,温馨提示:本…...
小程序定制开发团队/汕头seo不错
一、VBS语言基础 1.运算符和表达式 (1)运算符 (2)表达式 a.数学表达式:由算术运算符连接,计算结果为数字 b.字符串表达式:由字符串连接符连接&#x…...
怎么做代刷网站/it教育培训机构
在 Windows 系统中,可以使用 shutil 库来实现文件复制。下面是一个例子: import shutil import ossrc_folder "C:\\A" dst_folder "D:\\B" rename_list []for filename in os.listdir(src_folder):if filename.endswith(".pdf"):sr…...
app软件制作网站/搜索引擎营销简称seo
【实例简介】更新至2018-05-30 增加不支持IE8的页面提示 修复页面链接和表单提交默认在新窗口中打开的问题 更新suggest插件,修复错位问题 升级bootstrap版本到3.3.6版本 升级layer到2.1版本 升级echarts到2.2.7版本 升级webuploader到0.1.5版本 修复网络条件不好情…...
做网站的成本在哪/必应搜索引擎怎么样
按照相关交通领域机构发布的数据显示,近年来,分心驾驶已经成为公路事故和死亡的主要原因。同时,随着高阶智能驾驶的陆续前装上车,驾驶员的监控(保证对前方道路的持续注意力)也成为安全风险的“重灾区”。 …...