Python+selenium 实现自动上传并发布抖音短视频实例演示

Python+Selenium自动化  ---- 抖音短视频发布

1、素材准备

  •   素材展示

2、实现过程

  •   调用已启用的浏览器
  •   上传视频和图片
  •   完整源码展示

素材展示

实现过程

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

1、调用已启用的浏览器

(通过调用已启用的浏览器,可以直接跳过登录过程)

Python+selenium 自动化-操作已启用的chrome浏览器实例演示,chrome启用调试端口方法_小蓝枣的博客-CSDN博客_chrome调试端口

from selenium import webdriver

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

2、上传视频和图片

# 上传本地视频
driver.find_element_by_xpath('//*[text()="发布视频"]').click()
time.sleep(2)
driver.find_element_by_xpath('//input[@type="file"]').send_keys(path_mp4)

# 添加封面
driver.find_element_by_xpath('//*[text()="编辑封面"]').click()
time.sleep(1)
driver.find_element_by_xpath('//div[text()="上传封面"]').click()
time.sleep(1)
driver.find_element_by_xpath('//input[@type="file"]').send_keys(path_cover)
time.sleep(3)
driver.find_element_by_xpath('//*[text()="裁剪封面"]/..//*[text()="确定"]').click()
time.sleep(3)
driver.find_element_by_xpath('//*[text()="设置封面"]/..//*[contains(@class,"upload")]//*[text()="确定"]').click()

3、完整源码展示

import selenium
from selenium import webdriver
import pathlib
import time
from selenium.webdriver.common.keys import Keys

# 基本信息
# 视频存放路径
catalog_mp4=r"C:\Users\linweiting\Desktop\视频发布"
# 视频描述
describe="三国演义周瑜专栏 #国学 #电视 #智慧"
time.sleep( 5 )
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_douyin() :
    '''
     作用:发布抖音视频
    '''

    # 进入创作者页面,并上传视频
    driver.get( "https://creator.douyin.com/creator-micro/home" )
    time.sleep( 2 )
    driver.find_element_by_xpath( '//*[text()="发布视频"]' ).click( )
    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( "视频已上传完成!" )
    time.sleep(3)
    # 添加封面
    driver.find_element_by_xpath( '//*[text()="编辑封面"]' ).click( )

    time.sleep( 5 )
    driver.find_element_by_xpath( '//div[text()="上传封面"]' ).click( )
    time.sleep( 1 )
    driver.find_element_by_xpath( '//input[@type="file"]' ).send_keys( path_cover )
    time.sleep( 3 )
    driver.find_element_by_xpath( '//*[text()="裁剪封面"]/..//*[text()="确定"]' ).click( )
    time.sleep( 3 )
    driver.find_element_by_xpath( '//*[@class="operation--2_JP2"]//*[text()="确定"]' ).click()
#//div[@class="dialog-operation--35HYf"]//*[text()="确定"]
#//*[text()="设置封面"]/..//*[contains(@class,"upload")]//*[text()="确定"]
    time.sleep( 5 )
    # 输入视频描述
    driver.find_element_by_xpath( '//div[@aria-autocomplete="list"]//br' ).send_keys(
        describe + " #上热门 #dou上热门 #我要上热门" )

    # 设置选项
    time.sleep( 1 )
    driver.find_element_by_xpath( '//*[@class="radio--4Gpx6"]' ).click( )
    time.sleep( 1 )
    driver.find_element_by_xpath( '//*[@class="semi-select-selection"]//span[contains(text(),"输入")]' ).click( )
    time.sleep( 1 )
    driver.find_element_by_xpath( '//*[@class="semi-select-selection"]//input' ).send_keys( "深圳" )


    time.sleep( 5 )
    driver.find_element_by_xpath( '//*[@class="semi-popover-content"]//*[text()="深圳人才公园"]' ).click( )

    # 同步到西瓜视频
    # driver.find_element_by_xpath('//div[@class="preview--27Xrt"]//input').click()   # 默认启用一次后,后面默认启用了。

    #driver.find_element_by_xpath( '//*[@class="card-pen--2P8rh"]' ).click( )
    driver.find_element_by_xpath('//*[@id="root"]/div/div/div[2]/div[1]/div[12]/div[1]/div/div[2]/div/input')
    #driver.find_element_by_xpath( '//*[@class="DraftEditor-root"]//br' ).send_keys( describe + " #上热门" )


    #driver.find_element_by_xpath( '//button[text()="确定"]' ).click( )

    # 人工进行检查并发布
    # time.sleep(3)
    # # 点击发布
    driver.find_element_by_xpath('//button[text()="发布"]').click()


# 开始执行视频发布
publish_douyin( )

  • 5
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值