欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python調(diào)用chrome實(shí)現(xiàn)網(wǎng)頁自動(dòng)操作過程

 更新時(shí)間:2023年11月11日 12:21:57   作者:+++.  
這篇文章主要介紹了python調(diào)用chrome實(shí)現(xiàn)網(wǎng)頁自動(dòng)操作,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

一. 內(nèi)容簡介

python調(diào)用chrome實(shí)現(xiàn)網(wǎng)頁自動(dòng)操作。

二. 軟件環(huán)境

2.1vsCode 2.2Anaconda

version: conda 22.9.0

2.3代碼

鏈接:

三.主要流程

3.1 下載驅(qū)動(dòng)和插件

調(diào)用谷歌瀏覽器,需要下載瀏覽器驅(qū)動(dòng)(https://registry.npmmirror.com/binary.html?path=chromedriver/),下載對應(yīng)的版本,最新的里面沒有,網(wǎng)上找一下就可以了,谷歌或者csdn,
然后安裝 selenium

! pip install selenium
! pip install pyautogui

安裝成功

3.2 調(diào)用谷歌瀏覽器

這個(gè)驅(qū)動(dòng)沒有路徑,好像也可以運(yùn)行,我只指定了網(wǎng)址,瀏覽的exe路徑,就沒了

# 填寫鏈接
        url_survey = 'https://www.wjx.cn/vm/ev6IfcA.aspx'
        options = webdriver.ChromeOptions()
        options.add_experimental_option('excludeSwitches', ['enable-automation'])
        options.add_experimental_option('useAutomationExtension', False)
        # 谷歌瀏覽器exe位置
        options.binary_location = r"C:\Program Files\Google\Chrome\Application\chrome.exe"
        # 是否要啟動(dòng)頁面
        # options.add_argument("--headless")  # 啟用無頭模式
        # GPU加速有時(shí)候會(huì)出bug
        options.add_argument("--disable-gpu")  # 禁用GPU加速
        options.add_argument("--disable-blink-features=AutomationControlled")
        driver = webdriver.Chrome(options=options)
        driver.execute_cdp_cmd('Page.addScriptToEvaluateOnNewDocument',
                            {'source': 'Object.defineProperty(navigator, "webdriver", {get: () => undefined})'})
        # 啟動(dòng)要填寫的地址,這就啟動(dòng)瀏覽器
        driver.get(url_survey)
		# 這是關(guān)閉瀏覽器
        driver.quit()#停止

啟動(dòng)成功

3.3 進(jìn)行網(wǎng)頁操作

需要注意的就是,然后就是按自己的需求寫就好了,有啥其他用到的,以后再補(bǔ)充,現(xiàn)在就用到這一個(gè)

# 兩個(gè)功能一致,使用這個(gè)代碼找到對應(yīng)的代碼,click()即可,和js基本類似,只是部分語法不一樣
# python里面的寫
sinPro = driver.find_elements(By.CSS_SELECTOR, f'.jqradio')
# js里面的
document.querySelectorAll(".jqradio")
# 引入相關(guān)模塊
from selenium.webdriver.common.by import By
from selenium import webdriver
#隨機(jī)數(shù)產(chǎn)生
import random 
#延時(shí)
import time
import pyautogui
#單選題
def single(driver):
# 假設(shè)有10個(gè)單選題
    for j in range(1, 18):
        # 每個(gè)單選題所在的位置
        sinPro = driver.find_elements(By.CSS_SELECTOR, f'#div{j}')
        # 每個(gè)單選題的答案進(jìn)行遍歷
        for answer in sinPro:
            # 對應(yīng)每個(gè)單選題的選項(xiàng)組合
            ansItem = answer.find_elements(By.CSS_SELECTOR, '.ui-radio') 
            if ansItem:
                random.choice(ansItem).click()
            else:
                ansItem = answer.find_elements(By.CSS_SELECTOR, '.ui-checkbox') 
                selected_items = random.sample(ansItem, random.randint(2, 4))  # 選擇兩個(gè)不重復(fù)的元素
                for item in selected_items:
                    item.click()
            # 答題時(shí)間間隔
            time.sleep(random.randint(0, 1)/2)
#腳本執(zhí)行方法
def launch(nums):
    for i in range(0, nums):
        url_survey = 'https://www.wjx.cn/vm/ev6IfcA.aspx'
        options = webdriver.ChromeOptions()
        options.add_experimental_option('excludeSwitches', ['enable-automation'])
        options.add_experimental_option('useAutomationExtension', False)
        options.binary_location = r"C:\Program Files\Google\Chrome\Application\chrome.exe"
        # options.add_argument("--headless")  # 啟用無頭模式
        options.add_argument("--disable-gpu")  # 禁用GPU加速
        options.add_argument("--disable-blink-features=AutomationControlled")
        driver = webdriver.Chrome(options=options)
        driver.execute_cdp_cmd('Page.addScriptToEvaluateOnNewDocument',
                            {'source': 'Object.defineProperty(navigator, "webdriver", {get: () => undefined})'})
        # 啟動(dòng)要填寫的地址
        driver.get(url_survey)
        # 填寫選擇題
        # single(driver)
        # # 提交按鈕
        # end = driver.find_elements(By.CSS_SELECTOR, f'#ctlNext')
        # end[0].click()
        #提交按鈕
        time.sleep(4)
        print('已經(jīng)提交了{(lán)}次問卷'.format(int(i) + int(1)))
        driver.quit()#停止
if __name__ == "__main__":
    #填寫問卷次數(shù)
    launch(4000)

結(jié)果如圖

四.參考

【python】自動(dòng)填寫問卷星問卷及提交 http://t.csdnimg.cn/aifYa 

到此這篇關(guān)于python調(diào)用chrome實(shí)現(xiàn)網(wǎng)頁自動(dòng)操作的文章就介紹到這了,更多相關(guān)python 網(wǎng)頁自動(dòng)操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論