python selenium自动化填写问卷星
文章目录
- 一. 介绍
- 二. 配置
- 三. Python脚本代码
- 四.运行结果展示
一. 介绍
本python脚本主要功能是自动填写问卷星,适合大量的问卷星填写需求。
问卷星有智能检测自动化程序的功能,所以我加了一些规避检测的代码,除此之外,问卷星还具有检测IP地址的功能,如果只用当前ip填写 问卷,很容易会被发现,为了解决这个问题,我设置了代理ip伪装,问卷星还会检测填写问卷的时间,适当的使用sleep()能使填写的问卷更加逼真有效。
二. 配置
谷歌游览器自动化插件,选择适合自己游览器版本的插件下载,放到和python脚本同意目录下。
代理IP地址
下面给出一个免费获取代理IP的网站 :https://www.kuaidaili.com/free/
免费代理IP好多是失效的,需要筛选才能使用
我使用了 下面这个代理IP
填写问卷后,登录问卷星平台,查看填写记录(IP有些偏差,但确实是访问成功了,ip地址也变了)
三. Python脚本代码
import random
from time import sleep
from lxml import html
from my_fake_useragent import UserAgent
from selenium import webdriver
from selenium.webdriver.chrome.options import Optionsetree = html.etreechrome_option = Options()
chrome_option.add_argument('--headless')
chrome_option.add_argument('--disable-gpu')
while True:ua = UserAgent(family='chrome')#请求头自动随机获取user_agent = ua.random()headers1 = {"User-Agent": user_agent}url = 'https://www.wjx.cn/vj/PWcHjHc.aspx'# referer = 'https://www.csdn.net/'driver_path = 'chromedriver.exe'opt = webdriver.ChromeOptions()#代理ip伪装,如果要伪装ip需要先找到一个能用的高匿名代理IP,否则页面打不开opt.add_argument("--proxy-server=http://14.20.235.139:9797")opt.add_experimental_option('excludeSwitches', ['enable-automation'])opt.add_experimental_option('useAutomationExtension', False)opt.add_argument('--user-agent=%s' % user_agent)opt.add_argument('--headers=%s' % headers1)# opt.add_argument('--referer=%s' % referer)# opt.add_argument('--user-agent=%s' % cookie)# 实现无可视化界面# opt.add_argument('--headless')# opt.add_argument('--disable-gpu')# 实现规避检测opt.add_experimental_option('excludeSwitches', ['enable-automation'])browser = webdriver.Chrome(executable_path=driver_path,options=opt)browser.execute_cdp_cmd('Page.addScriptToEvaluateOnNewDocument',{'source': 'Object.defineProperty(navigator, "webdriver", {get: () => undefined})'})#根据问卷设置自动填写样式browser.get(url)logo = browser.find_element_by_xpath('//*[@id="q1"]').send_keys("你好")browser.find_element_by_xpath('//*[@id="q2"]').send_keys("小明")i = 3while i <= 14:c = random.randint(1, 2);c1 = '//*[@id="divquestion' + str(i) + '"]/ul/li[' + str(c) + ']/label'browser.find_element_by_xpath(c1).click()i = i + 1browser.find_element_by_xpath('//*[@id="submit_button"]').click()browser.find_element_by_xpath('//*[@id="alert_box"]/div[2]/div[2]/div[2]/button').click()browser.find_element_by_xpath("//div[@id='captcha']").click()sleep(5)browser.close()
四.运行结果展示
python selenium自动化填写问卷星相关推荐
- 【python】自动填写问卷星问卷及提交
前言:问卷是很好的网络调查方式之一,近年来,问卷星被广泛应用于各方面的调查.本文介绍了利用python代码自动填写问卷星基本题目,拥有自动填写.解决智能验证.批量提交问卷等功能. 目录 1.下载浏览器 ...
- Selenium自动填写问卷星
Selenium自动填写问卷星 代码 注意 代码 from selenium import webdriver import random import time import numpy as np ...
- Python selenium自动化刷问卷+绕过智能验证
学校思政实践要收集1500份问卷,待在家里无聊就简单写了个用selenium模块实现的自动填写问卷xing问卷的小程序. 基本思路很简单: 1.先打开问卷的网址,按F12进开发者模式分析页 ...
- 使用 python 制作自动填写问卷星问卷调查程序
目录 前言 环境: 代码展示 尾语
- Python自动化问卷填写-问卷星(含完整代码)
目录 一.环境安装 二.代码分析 (一)库的引用 (二)驱动的运行 (三)各类题型的程序 (四)主程序(根据问卷客制) 三.完整代码 由于网上的问卷星填写代码良莠不齐,搜索半天也没有一个可以正常运行, ...
- Python~selenium填写问卷星
在学习Python 的过程中学习到selenium这个模块. Selenium 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样. Selenium ...
- python自动填写问卷星
python自动填写问卷星 参考链接1 参考链接2 用python实现自动填问卷,通过智能验证以及滑动验证 1. 下载浏览器驱动 python自动化填写问卷需要依赖浏览器驱动,这里使用的是谷歌浏览器, ...
- python自动填写问卷_Python填写问卷星
Python填写问卷星 有些无意义的问卷作业,真的没有必要. 但是作业既然有了,那就想办法解决它把. 关于IP限制的问题,可以使用X-Forwarded-For更换IP. 只会用印象笔记markdow ...
- python爬虫之自动填写问卷星调查表
系列文章目录 python爬虫之自动填写问卷星调查表 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 系列文章目录 前言 一.python爬虫填写问卷星 二.使用步骤总结 ...
- Python爬虫拓展应用——Selenium代刷问卷星问卷
原始版本,升级版请见Selenium代刷问卷星问卷,升级版. 二更(2018年9月19日): 慎重考虑升级版也需要一定开发经验的同学才能自己完成.所以设置了仅vip可见,希望谅解. 感谢大家的光临,受 ...
最新文章
- 出现 HTTP 错误 500.19 错误代码 0x800700b7
- [ZOJ 4024] Peak
- 大道至简,阿里巴巴敏捷教练的电子看板诞生记
- DEVICE_ATTR的使用
- 太厉害了!3小时34分!53岁院士施一公完成人生首马
- JS基础--Date.parse(),Date.UTC()和Date.now()
- POJ1273 裸裸的网络流
- 中国临床诊断自动化行业市场供需与战略研究报告
- jdbc_连接数据库
- 阿里云ICON全部下载
- Echart 四象限图
- Nginx--流量限制(最有用的功能之一)
- Android图文混排
- 一些javascript内容
- Tensorboard远程连接
- 第二十二章 : 格式化输出
- 思科三层交换机开启ipv6路由功能_思科路由器配置 IPv6 和 OSPFv3 路由
- 深信服C++ 一面(技术面、70min、offer)
- Pivotal中国研发中心总经理冯雷受邀参加2017金融证券行业大数据高峰论坛
- 最好的文学素材网站有哪些?