- 本开源项目的想法来自于我自己:具体的思考过程可点击链接查看
- 详细的使用过程和功能介绍可点击链接查看:视频转图文
- 目前支持 youtube、bilibili、X、toutiao四个平台的视频
- toutiao下载要设置一个cookie 暂时在代码里写死了
- 微信公众号:那个曾经的少年回来了
- 后台回复:video2blog 即可进群获取了解最新信息,也方便有想法的可以随时沟通
- 一个是将视频转换为图文笔记(另一个目标还没来的及确定)
视频转图文的思路流程
1、输入视频url之后
2、先通过yt-dlp解析视频url获取视频信息
3、通过yt-dlp下载视频
4、如果存在字幕,则直接进行下载
5、可能是非中文字幕,则需要进行翻译字幕
6、如果不存在字幕,则通过whisper来生成字幕文件,并翻译为中文
7、然后通过gemini将字幕转换为文章。并将视频中的图片进行提取,手动插入到文章中
- node和npm的版本在这附近应该都可以跑起来
node -v //20.11.0
npm -v //10.2.4
- python和pip运行版本
python3 -v //3.11.2
pip3 -v //24.0
- 安装项目依赖
npm i
- 本地window下运行
npm run start-win
- 本地mac下运行
npm run start-mac
主要在于win下命令行中中文乱码,mac下不会出现这个问题,于是使用 chcp 65001 命令来解决这个问题 win下注意拷贝单独拷贝大文件:https://drive.google.com/drive/folders/1n4bbRp27sM7g9_D0XrRFqW2OLVNeXONv?usp=sharing 下载文件后,拷贝到command/mac
mac下注意拷贝单独拷贝大文件:https://drive.google.com/drive/folders/1s8ZYxqaSox-fLHjQQF0tUr7ogMCTM5-S?usp=drive_link 下载文件后,拷贝到command/win
-
通过git仓库打tag标签来触发编译 github action workflow
-
其中python脚本
在window开发环境下打包,会在/command/win目录下生成exe文件
pyinstaller --onefile RemoveDuplicateImages.py -y --distpath ../command/win -n executename.exe(executename)
如何安装pyinstaller呢
pip install pyinstaller
- 在python/xxxxx目录下 可进行安装依赖
pip3 install -r requirements.txt
- 如何将依赖安装到 requirements.txt中
pip3 install xxx
pip3 freeze > requirements.txt
如何单独执行去重命令 window下 python main.py H:\github\electron-vite-tools\command\2024-05-10-16-29-38\000000133 30
// 第一个版本
现在你作为一个科技博主,请先精读上面的字幕,然后根据字幕内容再进行分段,分的段落不要太多,尽量保持在4到8段左右,分段后要对分段内容进行整理,注意一定不需要总结也不要进行删减内容,只是进行整理和微调,并标记字幕时间的区间
//第二个版本
现在你作为一个科技博主,请先精读上面的字幕,然后直接对上面的字幕进行整理成一篇文章进行输出,记住一定一定不要删减任何内容,也不要进行总结。对输出的文章增加目录功能,而且目录标题一定一定要精简,并且在目录上添加字幕时间区间,目录最多4到8个,不能再多。并且再次提醒你,目录下的内容不能进行删减和总结哟
//第三个版本
现在你作为一个科技博主,请先精读上面的字幕,然后直接对上面的字幕进行整理成一篇文章进行输出,记住一定一定不要删减任何内容,也不要进行总结。对输出的文章增加目录功能,而且目录标题一定一定要精简,并且在目录上添加字幕时间区间,目录最多4到8个,一定一定不能再多了。并且再次提醒你,目录下的所有内容不能进行删减和总结哟,后半段的内容也不能进行偷工减料。
将上述输出的内容最终转换为Quill 富文本编辑器的Delta的JSON格式。
//第四个版本
现在你作为一个科技博主,请先精读上面的字幕,然后直接对上面的字幕进行整理成一篇文章进行输出,记住一定一定不要删减任何内容,也不要进行总结。对输出的文章增加目录功能,而且目录标题一定一定要精简,并且在目录上添加字幕时间区间,目录最多4到8个,一定一定不能再多了。并且再次提醒你,目录下的所有内容不能进行删减和总结哟,后半段的内容也不能进行偷工减料。将上述输出的内容最终转换为markdown格式,目录上添加##,目录下的内容不做任何处理就行了
- 暂定的终极版本
角色: 你现在作为一个资深的科技博主
任务:
1、精读字幕: 请仔细阅读提供的字幕内容。
2、生成博文: 将字幕内容整理成一篇博文,务必保留所有信息,不做任何删减或总结。
3、创建目录:
目录标题需精简,并包含对应内容的时间区间,时间区间要精确。
目录数量控制在 4-8 个。
目录格式使用 markdown,即在标题前添加 ##。
所有生成的目录后面都要添加时间区间,前言中的目录列表可以不添加时间区间。
4、正文格式:
保留字幕内容的完整性,不做任何删减或总结。要整理成博文内容啊。
无需对正文内容进行 markdown 格式处理。
目标:
生成一篇包含完整字幕内容的博文,并配有清晰、精简的目录,方便读者阅读和导航。开头是前言加上目录,然后后面以目录正文的形式展示剩余内容。
注意:
确保忠实于原始字幕内容,避免信息丢失。
目录应简洁明了,方便读者快速定位所需信息。
优化说明:
在原提示词的基础上,强调了保留所有信息的重要性,避免博文内容被删减。
明确了目录格式的要求,使用 markdown 形式,并限制了目录数量,确保简洁易读。
细化了任务步骤,使指令更清晰易懂。
最终我直接复制markdown内容使用。
---------------------------------
按照这个格式给我输出一个模板我看看
-
ffmpeg
-
参考文档
-
初始化项目
-
主进程和渲染进程间的通信
-
Menu菜单的设置
-
引入node原生模块
-
Electron 获取当前用户data存放目录
-
npm build 报错 node-gyp
-
sqlite3 操作数据库api
-
python 打包成exe
-
electron-build 打包添加静态资源
- https://www.cnblogs.com/mrwh/p/12961446.html?ivk_sa=1024320u 区分开发环境和打包后的环境进行处理
-
electron-builder编译时报错
reason=prebuild-install failed with error (run with env DEBUG=electron-builder to get more information)
error=prebuild-install info begin Prebuild-install version 7.1.2
prebuild-install warn This package does not support N-API version 36
解决的办法是因为sqlite3的版本问题 npm install -E sqlite3@5.1.6
- whisper 模型
//https://www.bilibili.com/read/cv23285680/
//https://blog.csdn.net/a71468293a/article/details/135995878
// 下载模型
model_size_or_path="指定模型位置"
如果不指定下载模型的位置,则下载到默认的路径 C:\Users\Administrator\.cache\whisper
- mac下编译报错(sh: electron-builder: command not found)
npm i electron-builder
-
无法打开“yt-dlp”,因为Apple无法检查其是否包含恶意软件。
- https://www.jb51.net/os/MAC/881275.html
- 系统设置=>隐私与安全性=>往下拉可以看到=>安全性 yt-dlp =>点击允许即可
-
安装poetry 来管理python包