UI自动化填写问卷(selenium)+定时任务(懒人必备)
1.自动填报
UI自动化 selenium
开发程序动机:天天有人催着填写问卷,弄的头大。主要还是懒的每天一个个去填写内容。
开发总时长:2个小时;学习+开发+修改
遇到的小问题:
在自动化填写地图的时候,这个高德地图输入地址后下面无法实时更新(自己的chrome问题).
解决方法:
获取重新定位的按钮,然后在确定地址(不是很精确)
源码分享:
from selenium import webdriver
import time
import random
def run():
#3
driver.find_element_by_id("q3").send_keys("赵常恒")
#4
driver.find_element_by_id("q4").send_keys("36."+str(random.randint(0,5)))
#5
driver.find_element_by_id("q5").send_keys("36." + str(random.randint(0, 5)))
#6
js="document.getElementById(\"q6_2\").click()"
driver.execute_script(js)
#7
js = "document.getElementById(\"q7_2\").click()"
driver.execute_script(js)
#8
driver.find_element_by_id("q8").send_keys("父亲36.1 / 36.2 母亲36.3 / 36.4")
#9
js = "document.getElementById(\"q9_2\").click()"
driver.execute_script(js)
#10
js = "document.getElementById(\"q10_2\").click()"
driver.execute_script(js)
#11
js = "document.getElementById(\"q11_2\").click()"
driver.execute_script(js)
#12
driver.find_element_by_id("q12").click()
driver.switch_to.frame("PDF_i_chezchenz")
driver.find_element_by_class_name("amap-geolocation-con").click()
#driver.find_element_by_xpath('/html/body/div/div[2]/ul/li[1]').click()
time.sleep(1)
element = driver.find_element_by_xpath("/html/body/div/div[4]/div[1]/a")
driver.execute_script("arguments[0].click();", element)
#driver.find_element_by_css_selector("a.ensure_btn").click()
time.sleep(1)
driver.switch_to.default_content()
#13
js = "document.getElementById(\"q13_2\").click()"
driver.execute_script(js)
#14
driver.find_element_by_id("q14").send_keys("无")
#15
driver.find_element_by_id("q15").click()
driver.switch_to.frame("__calendarIframe")
driver.find_element_by_id("selectTodayButton").click()
driver.switch_to.default_content()
#16
js="document.getElementById(\"q16_1\").click()"
driver.execute_script(js)
#17
js = "document.getElementById(\"q17_2\").click()"
driver.execute_script(js)
#18
js = "document.getElementById(\"q18_2\").click()"
driver.execute_script(js)
#19
js = "document.getElementById(\"q19_2\").click()"
driver.execute_script(js)
#20
driver.find_element_by_id("q20").send_keys("无")
driver.find_element_by_id("submit_button").click()
if __name__=='__main__':
driver=webdriver.Chrome()
driver.get("https://www.wjx.top/jq/78343451.aspx")
run()
2.创建bat文件
wjx.bat
cd D:\PycharmProjects\wjx
D:
python wjx.py
3.设置定时任务
个人采用win10系统,此处也只对win10系统操作说明
1.右键左下角,选择进入计算机管理||右击 “此电脑”选择管理
2.选择任务计划程序,进入任务计划程序库
3.创建任务
常规设置:
触发器设置(可以按自己需要来设置,自己摸索)
操作设置(启动脚本):
设置:
以上步骤完成后,就可以成功的实现自动化填写操作,终于可以给大脑留出其他的空间了。
UI自动化填写问卷(selenium)+定时任务(懒人必备)的更多相关文章
- 懒人必备:.NetCore快速搭建ELK分布式日志中心
该篇内容由个人博客点击跳转同步更新!转载请注明出处! 前言 ELK是什么 它是一个分布式日志解决方案,是Logstash.Elastaicsearch.Kibana的缩写,可用于从不同的服务中收集日志 ...
- MySQL 数据库的tab 补全功能 (懒人必备)
MySQL 数据库的tab补全功能 跟着步骤走~~ 懒人养成第一步 不仅帮你补全 甚至预判你的预判,就问你可怕不可怕 1.安装相关依赖软件(需要配置yum官方 ...
- UI自动化学习笔记- Selenium一些特殊操作的处理
一.特殊操作处理 1. 下拉选择框操作 1.1 如何操作下拉选择框 实现方式一 思路:先定位到要操作的option元素,然后执行点击操作 driver.find_element_by_css_sele ...
- UI自动化学习笔记- Selenium元素等待(强制等待、显示等待、隐式等待)
一.元素等待 1. 元素等待 1.1 什么是元素等待 概念:在定位页面元素时如果未找到,会在指定时间内一直等待的过程 意思就是:等待指定元素已被加载出来之后,我们才去定位该元素,就不会出现定位失败的现 ...
- UI自动化学习笔记- Selenium元素定位及元素操作
一.元素定位 1. 如何进行元素定位? 元素定位就是通过元素的信息或元素层级结构来定位元素的 2.定位工具 浏览器开发者工具 3.元素定位方式 Selenium提供了八种定位元素方式 id name ...
- css之px自动转rem—“懒人”必备
作为一名前端开发,尤其是在做移动端适配时,rem是我们经常用到的单位,它的好处大家可以自行搜索,网上已经有很多了.但是我们再将设计稿上的px转换成rem时,得手动的去计算,这是一个很耗时.费力的过程, ...
- Android Studio “懒人”必备插件android layout id converter
在一个布局文件里.假设定义了非常多非常多id,代码中一个个findview是一件非常枯燥而且浪费时间的事情. 所以这里向大家推荐一个必备插件android layout id converter. 配 ...
- 懒人必备,IntelliJ IDEA中代码一键生成
之前有不少小伙伴问松哥微人事项目(https://github.com/lenve/vhr)使用的 MyBatis 逆向工程在哪里?其实旧版微人事当时没有使用逆向工程,是我自己手动敲出来的,当然手动敲 ...
- Lombok——一款Java构建工具,“懒人”必备!!(idea版)
一.简介 Lombok 是一种 Jav 构建工具,可用来帮助开发人员消除 Java 的冗长代码,尤其是对于简单的 Java 对象(POJO).它是通过注解实现这一目的. 二.使用 1.在idea中安装 ...
随机推荐
- Scala 面向对象(二):package 包 (一) 入门
1 Scala包的基本介绍 和Java一样,Scala中管理项目可以使用包,但Scala中的包的功能更加强大,使用也相对复杂些,下面我们学习Scala包的使用和注意事项. 2 Scala包快速入门 使 ...
- python 三维散点插值 griddata
#三维点插值#在三维空间中,利用实际点的值推算出网格点的值import numpy as np point_grid =np.array([[0.0,0.0,0.0],[0.4,0.4,0.4],[0 ...
- python numpy indexerror: too many indices for array
import numpy as np #data 原来数组 #arr_1 新数组 #将data的第一列赋值给arr_1的第一列 arr_1 = np.array((data.shape[0],5)) ...
- ubuntu 下安装QQ TIM QQ轻聊版 微信 Foxmail 百度网盘 360压缩 WinRAR 迅雷极速版
第1步,安装deepin-wine环境:上https://github.com/wszqkzqk/deepin-wine-ubuntu页面下载zip包(或用git方式克隆),解压到本地文件夹,在文件夹 ...
- OSCP Learning Notes - Exploit(6)
Antivirus Bypassing Tools: Kali Linux Detection Platform: https://www.virustotal.com/gui/home/upload ...
- Python Ethical Hacking - VULNERABILITY SCANNER(7)
VULNERABILITY_SCANNER How to discover a vulnerability in a web application? 1. Go into every possibl ...
- 013.Nginx动静分离
一 动静分离概述 1.1 动静分离介绍 为了提高网站的响应速度,减轻程序服务器(Tomcat,Jboss等)的负载,对于静态资源,如图片.js.css等文件,可以在反向代理服务器中进行缓存,这样浏览器 ...
- Shell基本语法---处理海量数据的cut命令
cut命令 cut应用场景:通常对数据进行列的提取 语法:cut [选项] [file] -d #指定分割符 -f #指定截取区域 -c #以字符为单位进行分割 # 以':'为分隔符,截取出/etc/ ...
- 2020JAVA最新应对各种OOM代码样例及解决办法
引言 作者:黄青石 链接:https://www.cnblogs.com/huangqingshi/p/13336648.html?utm_source=tuicool&utm_medium= ...
- OKex平台如何使用谷歌身份验证?
打开OK交易所官网,找到谷歌身份验证器的开启界面 登陆后点击右上角头像-账户和安全 然后[安全设置]里出现“谷歌验证”的位置,点击开启按钮,到了二维码和密钥显示的界面 我们不使用谷歌身份验证器,因为需 ...