IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> 问卷星python+selenium自动填写 -> 正文阅读

[Python知识库]问卷星python+selenium自动填写

1.下载插件文件stealth.min.js
链接:https://pan.baidu.com/s/18XV6ROkSg-FEnADyY6AHeA
提取码:bpee
2.自动填写过程中发现挂梯子不用弹出滑动验证,用本地ip刷到几十份就挂了
3.代码

from selenium.webdriver.support.ui import WebDriverWait
import time
import random
from selenium.webdriver import Chrome
from selenium.webdriver.chrome.options import Options
def get_ele_time(driver,time,func):
    WebDriverWait(driver,time).until(func)

def run():
    # browser = webdriver.Chrome()
    # browser.get("https://www.wjx.cn/vm/YsK8J1l.aspx")
    chrome_options = Options()
    chrome_options.add_argument("--disable-blink-features=AutomationControlled")
    chrome_options.add_experimental_option('excludeSwitches', ['enable-automation'])

    # chrome_options.add_argument("--headless")
    chrome_options.add_argument(
        'user-agent=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.82 Safari/537.36')

    browser = Chrome(options=chrome_options)

    with open('D:\Afjy\爬虫\模拟请求/stealth.min.js') as f:
        js = f.read()

    browser.execute_cdp_cmd("Page.addScriptToEvaluateOnNewDocument", {
        "source": js,
    })
    browser.get('https://www.wjx.cn/vm/YsK8J1l.aspx')
    # time.sleep(2)

    # 1
    randomId = random.randint(1, 2)
    js = "document.getElementById(\"q1_" + str(randomId) + "\").click()"
    browser.execute_script(js)
    time.sleep(1)

    # 2
    randomId = random.randint(2, 3)
    js = "document.getElementById(\"q2_" + str(randomId) + "\").click()"
    browser.execute_script(js)
    time.sleep(1)

    # 3
    randomId = random.randint(1, 4)
    js = "document.getElementById(\"q3_" + str(randomId) + "\").click()"
    browser.execute_script(js)
    time.sleep(1)

    # 4
    randomId = random.randint(1, 3)
    js = "document.getElementById(\"q4_" + str(randomId) + "\").click()"
    browser.execute_script(js)
    time.sleep(1)

    # 5
    randomId1 = random.randint(1, 6)
    js = "document.getElementById(\"q5_" + str(randomId1) + "\").checked = true"
    browser.execute_script(js)
    js = "document.getElementById(\"q5_" + str(randomId1) + "\").click()"
    browser.execute_script(js)

    # 6
    randomId = random.randint(1, 2)
    js = "document.getElementById(\"q6_" + str(randomId) + "\").click()"
    browser.execute_script(js)
    time.sleep(1)

    # 8
    randomId = random.randint(1, 4)
    js = "document.getElementById(\"q8_" + str(randomId) + "\").click()"
    browser.execute_script(js)
    time.sleep(1)

    # 9
    randomId = random.randint(1, 3)
    js = "document.getElementById(\"q9_" + str(randomId) + "\").click()"
    browser.execute_script(js)
    time.sleep(1)

    # 10
    # randomId = random.randint(1, )
    js = "document.getElementById(\"q10_" + str(1) + "\").click()"
    browser.execute_script(js)
    block = ['1', "2", "1.5"]
    randomId = random.randint(0, 2)
    browser.find_element_by_id("tqq10_1").send_keys(block[randomId])
    # time.sleep(1)
    time.sleep(1)

    # 11
    randomId1 = random.randint(1, 4)
    js = "document.getElementById(\"q11_" + str(randomId1) + "\").checked = true"
    browser.execute_script(js)
    js = "document.getElementById(\"q11_" + str(randomId1) + "\").click()"
    browser.execute_script(js)

    # 12
    randomId1 = random.randint(1, 4)
    js = "document.getElementById(\"q12_" + str(randomId1) + "\").checked = true"
    browser.execute_script(js)
    js = "document.getElementById(\"q12_" + str(randomId1) + "\").click()"
    browser.execute_script(js)

    # 13
    randomId1 = random.randint(1, 5)
    js = "document.getElementById(\"q13_" + str(randomId1) + "\").checked = true"
    browser.execute_script(js)
    js = "document.getElementById(\"q13_" + str(randomId1) + "\").click()"
    browser.execute_script(js)

    # 14
    randomId1 = random.randint(1, 4)
    js = "document.getElementById(\"q14_" + str(randomId1) + "\").checked = true"
    browser.execute_script(js)
    js = "document.getElementById(\"q14_" + str(randomId1) + "\").click()"
    browser.execute_script(js)

    #15
    js = "document.getElementById(\"q15_" + str(1) + "\").click()"
    browser.execute_script(js)
    time.sleep(1)

    #16
    randomId1 = random.randint(1, 2)
    js = "document.getElementById(\"q16_" + str(randomId1) + "\").checked = true"
    browser.execute_script(js)
    js = "document.getElementById(\"q16_" + str(randomId1) + "\").click()"
    browser.execute_script(js)

    #17
    js = "document.getElementById(\"q17_" + str(1) + "\").click()"
    browser.execute_script(js)
    time.sleep(1)

    #18
    randomId1 = random.randint(1, 6)
    js = "document.getElementById(\"q18_" + str(randomId1) + "\").checked = true"
    browser.execute_script(js)
    js = "document.getElementById(\"q18_" + str(randomId1) + "\").click()"
    browser.execute_script(js)

    #19
    js = "document.getElementById(\"q19_" + str(1) + "\").click()"
    browser.execute_script(js)
    time.sleep(1)

    #20
    randomId1 = random.randint(1, 5)
    js = "document.getElementById(\"q20_" + str(randomId1) + "\").checked = true"
    browser.execute_script(js)
    js = "document.getElementById(\"q20_" + str(randomId1) + "\").click()"
    browser.execute_script(js)

    # 21
    block = ["问卷内容还有点不够细致", "问卷内容很全面,符合实际", "没有不足之处,挺好的"]
    randomId = random.randint(0, 2)
    browser.find_element_by_id("q21").send_keys(block[randomId])
    # time.sleep(1)


    # submit
    js = "document.getElementById(\"ctlNext\").click()"
    browser.execute_script(js)

    # 消除确认弹窗
    time.sleep(1)
    js = 'document.getElementById("alert_box").style.display="none";'
    browser.execute_script(js)

    # 点智能验证提示框,进行智能验证
    browser.find_element_by_xpath("//div[@id='rectMask']").click()


    #
    #
    time.sleep(7)
    browser.quit()  # 运行完毕自动关闭浏览器


if __name__ == "__main__":
    for i in range(1,70):
        print(i)
        run()
        time.sleep(2)	#避免提交过快出现验证)
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-03-03 16:08:24  更:2022-03-03 16:09:58 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 21:51:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码