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)+定时任务(懒人必备)的更多相关文章

  1. 懒人必备:.NetCore快速搭建ELK分布式日志中心

    该篇内容由个人博客点击跳转同步更新!转载请注明出处! 前言 ELK是什么 它是一个分布式日志解决方案,是Logstash.Elastaicsearch.Kibana的缩写,可用于从不同的服务中收集日志 ...

  2. MySQL 数据库的tab 补全功能 (懒人必备)

    MySQL 数据库的tab补全功能                      跟着步骤走~~ 懒人养成第一步 不仅帮你补全 甚至预判你的预判,就问你可怕不可怕 1.安装相关依赖软件(需要配置yum官方 ...

  3. UI自动化学习笔记- Selenium一些特殊操作的处理

    一.特殊操作处理 1. 下拉选择框操作 1.1 如何操作下拉选择框 实现方式一 思路:先定位到要操作的option元素,然后执行点击操作 driver.find_element_by_css_sele ...

  4. UI自动化学习笔记- Selenium元素等待(强制等待、显示等待、隐式等待)

    一.元素等待 1. 元素等待 1.1 什么是元素等待 概念:在定位页面元素时如果未找到,会在指定时间内一直等待的过程 意思就是:等待指定元素已被加载出来之后,我们才去定位该元素,就不会出现定位失败的现 ...

  5. UI自动化学习笔记- Selenium元素定位及元素操作

    一.元素定位 1. 如何进行元素定位? 元素定位就是通过元素的信息或元素层级结构来定位元素的 2.定位工具 浏览器开发者工具 3.元素定位方式 Selenium提供了八种定位元素方式 id name ...

  6. css之px自动转rem—“懒人”必备

    作为一名前端开发,尤其是在做移动端适配时,rem是我们经常用到的单位,它的好处大家可以自行搜索,网上已经有很多了.但是我们再将设计稿上的px转换成rem时,得手动的去计算,这是一个很耗时.费力的过程, ...

  7. Android Studio “懒人”必备插件android layout id converter

    在一个布局文件里.假设定义了非常多非常多id,代码中一个个findview是一件非常枯燥而且浪费时间的事情. 所以这里向大家推荐一个必备插件android layout id converter. 配 ...

  8. 懒人必备,IntelliJ IDEA中代码一键生成

    之前有不少小伙伴问松哥微人事项目(https://github.com/lenve/vhr)使用的 MyBatis 逆向工程在哪里?其实旧版微人事当时没有使用逆向工程,是我自己手动敲出来的,当然手动敲 ...

  9. Lombok——一款Java构建工具,“懒人”必备!!(idea版)

    一.简介 Lombok 是一种 Jav 构建工具,可用来帮助开发人员消除 Java 的冗长代码,尤其是对于简单的 Java 对象(POJO).它是通过注解实现这一目的. 二.使用 1.在idea中安装 ...

随机推荐

  1. Scala 面向对象(二):package 包 (一) 入门

    1 Scala包的基本介绍 和Java一样,Scala中管理项目可以使用包,但Scala中的包的功能更加强大,使用也相对复杂些,下面我们学习Scala包的使用和注意事项. 2 Scala包快速入门 使 ...

  2. python 三维散点插值 griddata

    #三维点插值#在三维空间中,利用实际点的值推算出网格点的值import numpy as np point_grid =np.array([[0.0,0.0,0.0],[0.4,0.4,0.4],[0 ...

  3. 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)) ...

  4. ubuntu 下安装QQ TIM QQ轻聊版 微信 Foxmail 百度网盘 360压缩 WinRAR 迅雷极速版

    第1步,安装deepin-wine环境:上https://github.com/wszqkzqk/deepin-wine-ubuntu页面下载zip包(或用git方式克隆),解压到本地文件夹,在文件夹 ...

  5. OSCP Learning Notes - Exploit(6)

    Antivirus Bypassing Tools: Kali Linux Detection Platform: https://www.virustotal.com/gui/home/upload ...

  6. Python Ethical Hacking - VULNERABILITY SCANNER(7)

    VULNERABILITY_SCANNER How to discover a vulnerability in a web application? 1. Go into every possibl ...

  7. 013.Nginx动静分离

    一 动静分离概述 1.1 动静分离介绍 为了提高网站的响应速度,减轻程序服务器(Tomcat,Jboss等)的负载,对于静态资源,如图片.js.css等文件,可以在反向代理服务器中进行缓存,这样浏览器 ...

  8. Shell基本语法---处理海量数据的cut命令

    cut命令 cut应用场景:通常对数据进行列的提取 语法:cut [选项] [file] -d #指定分割符 -f #指定截取区域 -c #以字符为单位进行分割 # 以':'为分隔符,截取出/etc/ ...

  9. 2020JAVA最新应对各种OOM代码样例及解决办法

    引言 作者:黄青石 链接:https://www.cnblogs.com/huangqingshi/p/13336648.html?utm_source=tuicool&utm_medium= ...

  10. OKex平台如何使用谷歌身份验证?

    打开OK交易所官网,找到谷歌身份验证器的开启界面 登陆后点击右上角头像-账户和安全 然后[安全设置]里出现“谷歌验证”的位置,点击开启按钮,到了二维码和密钥显示的界面 我们不使用谷歌身份验证器,因为需 ...