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中安装 ... 
随机推荐
- numpy基础用法学习
			numpy get started 导入numpy库,并查看numpy版本 import numpy as np np.__version__ '1.14.0' 一.创建ndarray 1. 使用np ... 
- python之爬虫(九)PyQuery库的使用
			PyQuery库也是一个非常强大又灵活的网页解析库,如果你有前端开发经验的,都应该接触过jQuery,那么PyQuery就是你非常绝佳的选择,PyQuery 是 Python 仿照 jQuery 的严 ... 
- python之class面向对象(进阶篇)
			上一篇<Python 面向对象(初级篇)>文章介绍了面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一个模板,模板中包装了多个“函数”供使 ... 
- A Broken Calculator 最详细的解题报告
			题目来源:A Broken Calculator 题目如下(链接有可能无法访问): A Broken Calculator Time limit : 2sec / Stack limit : 256M ... 
- Java设计模式 --- 七大常用设计模式示例归纳
			设计模式分为三种类型,共23种: 创建型模式:单例模式.抽象工厂模式.建造者模式.工厂模式.原型模式 结构型模式:适配器模式.桥接模式.装饰模式.组合模式.外观模式.享元模式.代理模式 行为型模式:模 ... 
- 一口气说出 4 种分布式一致性 Session 实现方式,面试杠杠的~
			前言 公司有一个 Web 管理系统,使用 Tomcat 进行部署.由于是后台管理系统,所有的网页都需要登录授权之后才能进行相应的操作. 起初这个系统的用的人也不多,为了节省资源,这个系统仅仅只是单机部 ... 
- 012.Nginx负载均衡
			一 负载均衡概述 1.1 负载均衡介绍 负载均衡是将负载分摊到多个操作单元上执行,从而提高服务的可用性和响应速度,带给用户更好的体验.对于Web应用,通过负载均衡,可以将一台服务器的工作扩展到多台服务 ... 
- 微信小程序-点餐系统
			一.前言说明 博客声明:此文链接地址https://www.cnblogs.com/Vrapile/p/13353264.html,请尊重原创,未经允许禁止转载!!! 1. 主要功能 (1)后台定义分 ... 
- async基本使用
			async函数在使用上很简单,我们来看一下下面的例子 async function add(a,b){ return a+b } add(1,2).then((res) =>{ consoel. ... 
- EF批量插入太慢?那是你的姿势不对
			大概所有的程序员应该都接触过批量插入的场景,我也相信任何的程序员都能写出可正常运行的批量插入的代码.但怎样实现一个高效.快速插入的批量插入功能呢? 由于每个人的工作履历,工作年限的不同,在实现这样的一 ... 
