最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python+selenium實(shí)現(xiàn)趣頭條的視頻自動(dòng)上傳與發(fā)布

 更新時(shí)間:2021年12月27日 11:52:28   作者:掙扎的藍(lán)藻  
本文主要介紹了通過(guò)Python+selenium實(shí)現(xiàn)趣頭條的短視頻自動(dòng)上傳與發(fā)布功能,同時(shí)支持抖音、快手、b站、小紅書(shū)等平臺(tái)的視頻自動(dòng)化同步發(fā)布。需要的朋友可以參考一下

效果展示

效果展示

素材展示

一個(gè)為視頻,另一個(gè)為像素大小不小于視頻的封面。

實(shí)現(xiàn)過(guò)程

調(diào)用已啟用的瀏覽器

通過(guò)調(diào)用已啟用的瀏覽器,可以實(shí)現(xiàn)直接跳過(guò)每次的登錄過(guò)程。

使用方法可以參考補(bǔ)充內(nèi)容

from selenium import webdriver

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

上傳視頻和封面

上傳功能的使用方法可以參考補(bǔ)充內(nèi)容

# 上傳視頻
driver.find_element_by_xpath('//input[@type="file"]').send_keys(path_mp4)

# 等待視頻上傳完成
while True:
    time.sleep(3)
    try:
        driver.find_element_by_xpath('//*[contains(text(),"上傳成功")]')
        break;
    except Exception as e:
        print("視頻還在上傳中···")

print("視頻已上傳完成!")

# 添加封面
time.sleep(1)
driver.find_element_by_xpath('//*[@class="el-upload"]').click()
time.sleep(1)
driver.find_element_by_xpath('//*[text()="自定義封面"]').click()
time.sleep(1)
driver.find_element_by_xpath('//*[text()="選擇圖片"]/../..//input[@type="file"]').send_keys(path_cover)
time.sleep(3)
driver.find_element_by_xpath('//*[text()="確 定"]').click()

完整源碼展示?

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

# 基本信息
# 視頻存放路徑
catalog_mp4 = r"C:\Users\Administrator\Desktop\視頻發(fā)布"
# 視頻描述
describe = "裸眼3D看蜘蛛俠 #搞笑 #電影 #視覺(jué)震撼"
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_qutoutiao():
    '''
     作用:發(fā)布趣頭條視頻
    '''
    
    # 進(jìn)入創(chuàng)作者頁(yè)面,并上傳視頻
    driver.get("https://mp.qutoutiao.net/publish-content/video")
    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('//*[contains(text(),"上傳成功")]')
            break;
        except Exception as e:
            print("視頻還在上傳中···")
    
    print("視頻已上傳完成!")
    
    # 輸入標(biāo)題
    driver.find_element_by_xpath('//*[@placeholder="內(nèi)容標(biāo)題5-30字"]').clear()
    time.sleep(2)
    driver.find_element_by_xpath('//*[@placeholder="內(nèi)容標(biāo)題5-30字"]').send_keys(describe)
    
    # 輸入描述信息
    time.sleep(1)
    driver.find_element_by_xpath('//textarea').clear()
    time.sleep(2)
    driver.find_element_by_xpath('//textarea').send_keys(describe)
    
    # 選擇分類(lèi)
    time.sleep(1)
    driver.find_element_by_xpath('//*[@placeholder="請(qǐng)選擇分類(lèi)"]').click()
    time.sleep(1)
    driver.find_element_by_xpath('//*[text()="電影"]').click()
    time.sleep(1)
    driver.find_element_by_xpath('//*[text()="分類(lèi):"]').click()
    time.sleep(1)
    
    # 輸入標(biāo)簽
    time.sleep(1)
    driver.find_element_by_xpath('//*[@class="content-tag"]//input').click()
    time.sleep(2)
    driver.find_element_by_xpath('//*[@class="content-tag"]//input').send_keys("視覺(jué)震撼")
    time.sleep(2)
    driver.find_element_by_xpath('//*[@class="content-tag"]//input').send_keys(Keys.ENTER)
    time.sleep(2)
    driver.find_element_by_xpath('//*[@class="content-tag"]//input').send_keys("搞笑")
    time.sleep(2)
    driver.find_element_by_xpath('//*[@class="content-tag"]//input').send_keys(Keys.ENTER)
    time.sleep(2)
    driver.find_element_by_xpath('//*[@class="content-tag"]//input').send_keys("電影")
    time.sleep(2)
    driver.find_element_by_xpath('//*[@class="content-tag"]//input').send_keys(Keys.ENTER)

    # 添加封面
    time.sleep(1)
    driver.find_element_by_xpath('//*[@class="el-upload"]').click()
    time.sleep(1)
    driver.find_element_by_xpath('//*[text()="自定義封面"]').click()
    time.sleep(1)
    driver.find_element_by_xpath('//*[text()="選擇圖片"]/../..//input[@type="file"]').send_keys(path_cover)
    time.sleep(3)
    driver.find_element_by_xpath('//*[text()="確 定"]').click()
    
    
    # 人工進(jìn)行檢查并發(fā)布
    # time.sleep(3)
    # # 點(diǎn)擊發(fā)布
    # driver.find_element_by_xpath('//*[text()="發(fā)布"]').click()

# 開(kāi)始執(zhí)行視頻發(fā)布
publish_qutoutiao()

補(bǔ)充

Python+selenium操作已啟用的chrome瀏覽器

首先在 chrome 快捷方式的目標(biāo)后面加上這個(gè)參數(shù)。

前面是代表調(diào)試端口,可以隨便用端口,后面指向一個(gè)新的文件夾用于存儲(chǔ)用戶數(shù)據(jù)。

注: 后面的參數(shù)如果不加上,端口啟用好像會(huì)失敗,目前沒(méi)有找到原因。

 --remote-debugging-port=5003 --user-data-dir="C:\Py_selenium\auto"

然后雙擊快捷快捷方式打開(kāi)瀏覽器就好了,現(xiàn)在瀏覽器就能被控制了。

不確定端口是否啟用,可以在 cmd 用下面的方法查看端口啟用情況。

C:\Users\Administrator>netstat -ano | findstr 5003
  TCP    127.0.0.1:5003         127.0.0.1:53546        FIN_WAIT_2      12180
  TCP    127.0.0.1:5003         127.0.0.1:53547        TIME_WAIT       0
  TCP    127.0.0.1:5003         127.0.0.1:53858        FIN_WAIT_2      12180
  TCP    127.0.0.1:5003         127.0.0.1:53859        TIME_WAIT       0
  TCP    127.0.0.1:5003         127.0.0.1:53900        FIN_WAIT_2      12180
  TCP    127.0.0.1:5003         127.0.0.1:53901        TIME_WAIT       0
  TCP    127.0.0.1:53546        127.0.0.1:5003         CLOSE_WAIT      15540
  TCP    127.0.0.1:53858        127.0.0.1:5003         CLOSE_WAIT      9108
  TCP    127.0.0.1:53900        127.0.0.1:5003         CLOSE_WAIT      16320

通過(guò)訪問(wèn)調(diào)試端口控制已啟用的瀏覽器。

from selenium import webdriver

# 另一個(gè)導(dǎo)入chrome參數(shù)的方法
# from selenium.webdriver.chrome.options import Options
# options = Options()

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

運(yùn)行效果圖:

Python+selenium實(shí)現(xiàn)自動(dòng)導(dǎo)入、上傳外部文件

一開(kāi)始我覺(jué)得導(dǎo)入外部文件是需要操作 windows 的文件窗口呢,后來(lái)發(fā)現(xiàn)原來(lái)不用那么麻煩,只要給文件上傳的元素傳一個(gè)本地路徑就好了,就是一個(gè) input 類(lèi)型的。

右鍵元素點(diǎn)擊檢查可以看到對(duì)應(yīng)的元素。

然后 send_keys() 傳入路徑就好了。

driver.find_element_by_xpath('//input[@type="file"]').send_keys('C:\\Users\\Administrator\\Desktop\\文件.zip') 

以上就是Python+selenium實(shí)現(xiàn)趣頭條的視頻自動(dòng)上傳與發(fā)布的詳細(xì)內(nèi)容,更多關(guān)于Python selenium視頻自動(dòng)上傳與發(fā)布的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • matplotlib圖例legend語(yǔ)法及設(shè)置的方法

    matplotlib圖例legend語(yǔ)法及設(shè)置的方法

    這篇文章主要介紹了matplotlib圖例legend語(yǔ)法及設(shè)置的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Python基礎(chǔ)之條件語(yǔ)句詳解

    Python基礎(chǔ)之條件語(yǔ)句詳解

    今天給大家?guī)?lái)的是關(guān)于Python基礎(chǔ)的一些知識(shí),文章圍繞著Python條件語(yǔ)句展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • python通過(guò)百度地圖API獲取某地址的經(jīng)緯度詳解

    python通過(guò)百度地圖API獲取某地址的經(jīng)緯度詳解

    這篇文章主要給大家介紹了關(guān)于python通過(guò)百度地圖API獲取某地址的經(jīng)緯度的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-01-01
  • python os.path模塊使用方法介紹

    python os.path模塊使用方法介紹

    os.path 模塊是系統(tǒng)路徑操作模塊,但實(shí)際的原理可以把它認(rèn)為是處理包含斜杠("/")和反斜杠("\")字符串的模塊,其中,斜杠("/")是 linux 系統(tǒng)下的路徑分隔符,和反斜杠("\")是 windows 系統(tǒng)下的路徑分隔符
    2022-08-08
  • python實(shí)現(xiàn)在字符串中查找子字符串的方法

    python實(shí)現(xiàn)在字符串中查找子字符串的方法

    這篇文章主要介紹了python實(shí)現(xiàn)在字符串中查找子字符串的方法,涉及Python中find方法的相關(guān)使用技巧,需要的朋友可以參考下
    2015-07-07
  • Python Django 命名空間模式的實(shí)現(xiàn)

    Python Django 命名空間模式的實(shí)現(xiàn)

    這篇文章主要介紹了Python Django 命名空間模式的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • Python實(shí)現(xiàn)獲取域名所用服務(wù)器的真實(shí)IP

    Python實(shí)現(xiàn)獲取域名所用服務(wù)器的真實(shí)IP

    本文是給大家分享的使用python獲取到域名所在服務(wù)器的真實(shí)IP,原因是現(xiàn)在很多的網(wǎng)站都使用了CDN,大家很難直接查到域名的服務(wù)器的IP,本文是使用了一個(gè)巧妙的方法,詳情請(qǐng)仔細(xì)看看下文吧
    2015-10-10
  • keras.utils.to_categorical和one hot格式解析

    keras.utils.to_categorical和one hot格式解析

    這篇文章主要介紹了keras.utils.to_categorical和one hot格式解析,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-07-07
  • python?GUI編程實(shí)現(xiàn)掃雷游戲

    python?GUI編程實(shí)現(xiàn)掃雷游戲

    這篇文章主要為大家詳細(xì)介紹了python?GUI編程實(shí)現(xiàn)掃雷游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • python實(shí)現(xiàn)寫(xiě)數(shù)字文件名的遞增保存文件方法

    python實(shí)現(xiàn)寫(xiě)數(shù)字文件名的遞增保存文件方法

    今天小編就為大家分享一篇python實(shí)現(xiàn)寫(xiě)數(shù)字文件名的遞增保存文件方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10

最新評(píng)論

前郭尔| 高台县| 正镶白旗| 宜兴市| 华坪县| 自贡市| 红河县| 库车县| 耿马| 全南县| 二连浩特市| 河津市| 玉环县| 木兰县| 抚宁县| 图木舒克市| 老河口市| 霍林郭勒市| 武夷山市| 富民县| 丰都县| 连平县| 克什克腾旗| 始兴县| 平阳县| 舒兰市| 定西市| 德兴市| 大宁县| 济源市| 嘉荫县| 广安市| 黄浦区| 黑龙江省| 西充县| 韶山市| 临湘市| 潞西市| 宁阳县| 奉化市| 澎湖县|