Python+selenium 自媒体自动化 - 实现自动上传并发布搜狐号短视频实例演示

简介: Python+selenium 自媒体自动化 - 实现自动上传并发布搜狐号短视频实例演示

       

导读:

本系列依次介绍目前主流的短视频平台(抖音、快手、B站、微视、小红书、好看视频、西瓜视频、视频号、搜狐视频等)的短视频自动发布,希望帮助大家更方便、高效的来进行自媒体的创作与管理。

【本文介绍的是搜狐号的短视频自动发布。】

- - - -系列文章- - - -

Python+selenium 自媒体自动化 - 实现自动投稿、自动发布哔哩哔哩 B 站短视频实例演示

Python+selenium 自媒体自动化 - 实现自动上传并发布微视短视频实例演示

Python+selenium 自动化 - 搜狐号短视频发布

第一章:效果展示

① 效果展示

12.gif

② 素材展示

一个为视频,另一个为像素大小不小于视频的封面。

image.png

第二章:实现过程

① 调用已启用的浏览器

通过调用已启用的浏览器,可以实现直接跳过每次的登录过程。

使用方法可以查看:

Python+selenium 自动化 - 操作已启用的 chrome 浏览器实例演示,chrome 启用调试端口方法

from selenium import webdriver
options = webdriver.ChromeOptions()
options.add_experimental_option("debuggerAddress", "127.0.0.1:5003")
driver = webdriver.Chrome(options = options)

② 上传视频和图片

上传功能的使用方法可以查看:

Python+selenium 自动化 - 实现自动导入、上传外部文件实例演示

# 上传本地视频
driver.find_element_by_xpath('//input[@type="file"]').send_keys(path_mp4)
# 添加封面
time.sleep(1)
driver.find_element_by_xpath('//*[text()="上传图片"]').click()
time.sleep(1)
driver.find_element_by_xpath('//input[@type="file" and @id="new-file"]').send_keys(path_cover)
time.sleep(5)
driver.find_element_by_xpath('//*[@class="sync-library"]/..//*[text()="确定"]').click()
time.sleep(3)

③ 完整源码展示

import selenium
from selenium import webdriver
import pathlib
import time
from selenium.webdriver.common.keys import Keys
# 基本信息
# 视频存放路径
catalog_mp4 = r"C:\Users\Administrator\Desktop\视频发布"
# 视频描述
describe = "裸眼3D看《白蛇2:青蛇崛起》今日惊蛰,蛇虫横行,你我姐妹两条蛇,掀翻这金山寺 #青蛇 #裸眼3D #AI #国漫 #视觉震撼"
time.sleep(10)
options = webdriver.ChromeOptions()
options.add_experimental_option("debuggerAddress", "127.0.0.1:5003")
driver = webdriver.Chrome(options = options)
path = pathlib.Path(catalog_mp4)
# 视频地址获取
path_mp4 = ""
for i in path.iterdir():
    if(".mp4" in str(i)):
        path_mp4 = str(i);
        break;
if(path_mp4 != ""):
    print("检查到视频路径:" + path_mp4)
else:
    print("未检查到视频路径,程序终止!")
    exit()
# 封面地址获取
path_cover = ""
for i in path.iterdir():
    if(".png" in str(i) or ".jpg" in str(i)):
        path_cover = str(i);
        break;
if(path_cover != ""):
    print("检查到封面路径:" + path_cover)
else:
    print("未检查到封面路径,程序终止!")
    exit()
def publish_souhu():
    '''
     作用:发布搜狐视频
    '''
    # 进入搜狐短视频创作者页面,并上传视频
    driver.get("https://mp.sohu.com/mpfe/v3/main/news/addvideo")
    time.sleep(2)
    driver.find_element_by_xpath('//input[@type="file"]').send_keys(path_mp4)
    # 等待视频上传完成
    while True:
        time.sleep(3)
        try:
            driver.find_element_by_xpath('//*[text()="视频上传成功!"]')
            break;
        except Exception as e:
            print("视频还在上传中···")
    print("视频已上传完成!")
    # 输入标题,30个文字限制处理
    driver.find_element_by_xpath('//*[@class="publish-title"]//input').clear()
    time.sleep(2)
    title = describe[:describe.index(" #")]
    if(len(title)>30):
        title = title[:27]+"..."
    driver.find_element_by_xpath('//*[@class="publish-title"]//input').send_keys(title)
    # 输入描述
    time.sleep(1)
    driver.find_element_by_xpath('//*[@class="abstract-main"]//textarea').send_keys(describe)
    # 添加封面
    time.sleep(1)
    driver.find_element_by_xpath('//*[text()="上传图片"]').click()
    time.sleep(1)
    driver.find_element_by_xpath('//input[@type="file" and @id="new-file"]').send_keys(path_cover)
    time.sleep(5)
    driver.find_element_by_xpath('//*[@class="sync-library"]/..//*[text()="确定"]').click()
    time.sleep(3)
    # 选择分类
    time.sleep(1)
    target = driver.find_element_by_xpath('//*[text()="频道分类"]/../div[1]//*[@class="select-main"]')
    # 滚动到目标位置
    driver.execute_script("arguments[0].scrollIntoView();", target)
    time.sleep(1)
    driver.find_element_by_xpath('//*[text()="频道分类"]/../div[1]//*[@class="select-main"]').click()
    time.sleep(2)
    driver.find_element_by_xpath('//*[text()="频道分类"]/../div[1]//*[contains(text(),"动漫")]').click()
    time.sleep(1)
    driver.find_element_by_xpath('//*[text()="频道分类"]/../div[2]//*[@class="select-main"]').click()
    time.sleep(2)
    driver.find_element_by_xpath('//*[text()="频道分类"]/../div[2]//*[contains(text(),"动漫")]').click()
    # 人工进行检查并发布
    # time.sleep(3)
    # # 点击发布
    # driver.find_element_by_xpath('//*[text()="发布"]').click()
# 开始执行视频发布
publish_souhu()

喜欢的点个赞❤吧!

   

目录
相关文章
|
2月前
|
数据采集 测试技术 Python
自动化淘宝秒杀:使用Selenium WebDriver的实战指南
本文详细介绍了如何利用Selenium WebDriver自动化淘宝秒杀操作,包括环境配置、代码实现及注意事项,旨在帮助读者提升秒杀成功率,同时提醒合理使用以遵守平台规则。
105 8
|
5天前
|
Python
自动化微信朋友圈:Python脚本实现自动发布动态
本文介绍如何使用Python脚本自动化发布微信朋友圈动态,节省手动输入的时间。主要依赖`pyautogui`、`time`、`pyperclip`等库,通过模拟鼠标和键盘操作实现自动发布。代码涵盖打开微信、定位朋友圈、准备输入框、模拟打字等功能。虽然该方法能提高效率,但需注意可能违反微信使用条款,存在风险。定期更新脚本以适应微信界面变化也很重要。
104 60
|
3月前
|
Web App开发 前端开发 JavaScript
探索Python科学计算的边界:利用Selenium进行Web应用性能测试与优化
【10月更文挑战第6天】随着互联网技术的发展,Web应用程序已经成为人们日常生活和工作中不可或缺的一部分。这些应用不仅需要提供丰富的功能,还必须具备良好的性能表现以保证用户体验。性能测试是确保Web应用能够快速响应用户请求并处理大量并发访问的关键步骤之一。本文将探讨如何使用Python结合Selenium来进行Web应用的性能测试,并通过实际代码示例展示如何识别瓶颈及优化应用。
155 5
|
3月前
|
数据采集 存储 JavaScript
自动化数据处理:使用Selenium与Excel打造的数据爬取管道
本文介绍了一种使用Selenium和Excel结合代理IP技术从WIPO品牌数据库(branddb.wipo.int)自动化爬取专利信息的方法。通过Selenium模拟用户操作,处理JavaScript动态加载页面,利用代理IP避免IP封禁,确保数据爬取稳定性和隐私性。爬取的数据将存储在Excel中,便于后续分析。此外,文章还详细介绍了Selenium的基本设置、代理IP配置及使用技巧,并探讨了未来可能采用的更多防反爬策略,以提升爬虫效率和稳定性。
174 4
|
14天前
|
Web App开发 数据采集 JavaScript
CDP与Selenium相结合——玩转网页端自动化数据采集/爬取程序
本文介绍了Selenium、Chrome DevTools及Chrome DevTools Protocol (CDP) 的基本功能与应用。Selenium是一款开源自动化测试工具,适用于网页端应用程序测试和数据采集,具备跨平台特性。Chrome DevTools内置浏览器中,提供调试、分析Web应用程序的功能,包括元素、控制台、源代码和网络选项卡等。CDP是一套用于与Chromium内核浏览器通信的API,支持自动化测试和性能分析。文中还展示了Selenium与CDP结合使用的示例,如捕获网络请求数据和打印网页内容,并推荐了相关书籍和资源以供深入学习。
116 39
CDP与Selenium相结合——玩转网页端自动化数据采集/爬取程序
|
22天前
|
Web App开发 IDE JavaScript
Selenium IDE:Web自动化测试的得力助手
Selenium IDE:Web自动化测试的利器。作为开源工具,Selenium IDE支持录制与回放用户操作,适用于Chrome、Firefox等多浏览器,简化了测试流程,提升了效率,降低了自动化测试的门槛。它还支持导出多种编程语言的脚本,便于测试集成与复用。
75 19
Selenium IDE:Web自动化测试的得力助手
|
30天前
|
敏捷开发 测试技术 持续交付
自动化测试之美:从零开始搭建你的Python测试框架
在软件开发的马拉松赛道上,自动化测试是那个能让你保持节奏、避免跌宕起伏的神奇小助手。本文将带你走进自动化测试的世界,用Python这把钥匙,解锁高效、可靠的测试框架之门。你将学会如何步步为营,构建属于自己的测试庇护所,让代码质量成为晨跑时清新的空气,而不是雾霾中的忧虑。让我们一起摆脱手动测试的繁琐枷锁,拥抱自动化带来的自由吧!
|
2月前
|
存储 数据可视化 数据挖掘
Python数据分析项目:抖音短视频达人粉丝增长趋势
Python数据分析项目:抖音短视频达人粉丝增长趋势
|
2月前
|
运维 监控 网络安全
自动化运维的崛起:如何利用Python脚本简化日常任务
【10月更文挑战第43天】在数字化时代的浪潮中,运维工作已从繁琐的手工操作转变为高效的自动化流程。本文将引导您了解如何运用Python编写脚本,以实现日常运维任务的自动化,从而提升工作效率和准确性。我们将通过一个实际案例,展示如何使用Python来自动部署应用、监控服务器状态并生成报告。文章不仅适合运维新手入门,也能为有经验的运维工程师提供新的视角和灵感。
|
2月前
|
运维 监控 Python
自动化运维:使用Python脚本简化日常任务
【10月更文挑战第36天】在数字化时代,运维工作的效率和准确性成为企业竞争力的关键。本文将介绍如何通过编写Python脚本来自动化日常的运维任务,不仅提高工作效率,还能降低人为错误的风险。从基础的文件操作到进阶的网络管理,我们将一步步展示Python在自动化运维中的应用,并分享实用的代码示例,帮助读者快速掌握自动化运维的核心技能。
102 3