抖音热门视频自动转发到小红书 #
本教程将带你从零开始,逐步实现一个自动化项目:自动爬取抖音热门视频,提取音频,转文字,生成爆款小红书文案和配图,并自动发布到小红书。
第一步:环境准备与依赖安装 #
1.1 项目目标简介 #
本项目实现的自动化流程包括:
- 自动爬取抖音热门视频
- 提取视频音频并转为文字
- 利用AI生成小红书爆款文案和配图
- 自动将内容发布到小红书
1.2 安装Python环境 #
本项目推荐使用 Python 3.8 及以上版本。
检查是否已安装Python #
在命令行输入:
python --version如果没有安装,请前往 Python官网 下载并安装。
配置环境变量 #
安装时建议勾选"Add Python to PATH",否则需手动添加Python到环境变量。
1.3 安装依赖包 #
本项目依赖以下第三方库:
- requests
- opencv-python
- numpy
- cos-python-sdk-v5
- openai
- DrissionPage
在命令行中输入以下命令一次性安装:
pip install requests opencv-python numpy cos-python-sdk-v5 openai DrissionPage额外依赖 #
- 需要本地已安装 Chrome 浏览器(用于网页自动化)。
- 需要安装 ffmpeg(用于音视频处理)。
安装ffmpeg(Windows) #
- 访问 ffmpeg官网 下载 Windows 版本。
- 解压后,将
bin目录添加到系统环境变量PATH。 - 命令行输入
ffmpeg -version验证安装。
1.4 项目目录结构建议 #
建议将所有代码和资源文件放在同一个项目文件夹下,例如:
douyintools/
├── main.py
├── douyin.md
├── douyin_videos/ # 下载的视频
├── gen_img_1_no_watermark.jpg # 生成的去水印图片
├── ...第二步:抖音热门视频的自动爬取与保存 #
2.1 目标说明 #
本节目标是:让你能够自动化登录抖音网页版,搜索指定关键词,批量下载热门视频到本地。
2.2 主要用到的技术 #
- DrissionPage:一个强大的浏览器自动化库,支持自动扫码登录、页面元素操作、监听网络请求等。
- requests:用于下载视频文件。
- 正则表达式:用于处理视频标题,避免非法文件名。
2.3 代码实现与讲解 #
2.3.1 关键代码片段 #
from DrissionPage import Chromium, ChromiumOptions
import os
import re
import requests
import logging
# 初始化浏览器
co = ChromiumOptions()
browser = Chromium(co)
# 1. 打开抖音搜索页
keyword = "脆桃" # 可自定义关键词
url = f'https://www.douyin.com/search/{keyword}?type=video'
tab = browser.new_tab(url)
# 2. 等待扫码登录
while True:
if tab.run_js('document.querySelector("span.semi-avatar img") !== null'):
break
print("请扫码登录抖音账号...")
tab.wait(2)
# 3. 获取所有视频卡片
video_cards = tab.eles('.search-result-card')
print(f"共找到{len(video_cards)}个视频卡片")
# 4. 监听视频真实地址并下载
save_dir = 'douyin_videos'
os.makedirs(save_dir, exist_ok=True)
tab.listen.start('/video/tos')
for idx, card in enumerate(video_cards, 1):
card.hover()
title = card.ele(".VDYK8Xd7").text
# 处理标题,去除非法字符
title = re.sub(r'[\\/:*?"<>#|\s]', '', title)
real_video_url = tab.listen.wait().url
print(f"视频标题: {title}")
print(f"视频地址: {real_video_url}")
if real_video_url:
video_data = requests.get(real_video_url, headers={
'Referer': 'https://www.douyin.com/',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36'
}).content
file_path = os.path.join(save_dir, f'{idx}_{title}.mp4')
with open(file_path, 'wb') as f:
f.write(video_data)
print(f'已保存到: {file_path}')
else:
print('未找到视频地址,跳过。')2.3.2 详细说明 #
- 扫码登录:首次运行会弹出浏览器窗口,请用抖音App扫码登录。
- 监听视频地址:通过
tab.listen.start('/video/tos')监听真实视频流地址。 - hover触发:有些视频需要鼠标悬停才能触发真实视频流。
- 保存路径:所有视频会保存在
douyin_videos文件夹。
2.3.3 运行效果 #
- 命令行会输出每个视频的标题和保存路径。
- 下载的视频可直接在本地播放。
2.3.4 常见问题 #
- 扫码后页面无反应:请确保网络畅通,且浏览器未被防火墙拦截。
- 找不到视频卡片:可能是页面结构变动或关键词无热门视频,可尝试更换关键词。
- 下载慢或失败:可能是网络问题,建议科学上网或多试几次。