Python读Excel数据自动化填入日常办公的网页表单
前言
本篇内容,让你完全掌握Python是如何自动化办公的~
一、环境准备
1.1 Python 3.7.0
1.2 Pycharm (Python 开发工具)
1.3 Selenium (处理网页表单工具类)
1.4 openpyxl (处理Excel工具类)
selenium 安装:pip install selenium -i https://pypi.douban.com/simple/
openpyxlpy安装:pip install openpyxl -i https://pypi.douban.com/simple/
python3.7.0、pycharm 软件均在我们的百度网盘里:https://pan.baidu.com/s/1Pe0cZzLU1v46EHZZ7EGCnQ
资源失效了请加Python学习交流群进行获取:367203382
我们即将要从Excel中处理的数据长这样:
二、上代码
我们想创建一个.py 文件来实现我们的目标
2.1 先引入我们需要的工具类
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from openpyxl import load_workbook
import time
2.2 初始化谷歌Driver
# 1、初始化浏览器驱动器
def init_driver():
path = 'E:\\Python_Office_Auto\\Day15\\chromedriver.exe' # 这个要准备chromedriver.exe 放到我们.py 文件同目录。不知道如何获取,加群:367203382,问群主~~~
chrome_options = Options()
# 1、 添加user-agent
chrome_options.add_argument(
'user-agent="Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.163 Safari/535.1"')
# 2、把配置属性传递给驱动程序、并制定驱动程序的路径
driver = webdriver.Chrome(executable_path=path, options=chrome_options)
# 3、隐式等待(给每个网页的元素5秒钟的时间,5秒过后不出现、定位网页元素不存在、并进入异常处理)
driver.implicitly_wait(5)
return driver
2.3 读取Excel
def read_excel():
wb = load_workbook("用户表.xlsx")
ws = wb.active
list_users = []
for row in ws.iter_rows(min_row=2, max_row=4, min_col=1, max_col=4, values_only=True):
list_users.append(row)
return list_users
2.4 填写表单
def input_form(user):
driver.get('https://www.wjx.top/jq/81172286.aspx')
driver.find_element_by_name('q1').send_keys(user[0])
if user[1] =='男':
# 点击男性
driver.find_elements_by_class_name('jqRadio')[0].click()
else:
# 点击女性
driver.find_elements_by_class_name('jqRadio')[1].click() # 手机号
driver.find_element_by_name('q3').send_keys(user[2])
# 建议
driver.find_element_by_name('q4').send_keys(user[3])
# 提交
driver.find_element_by_id('submit_button').click()
time.sleep(3)
2.5 main 函数运行整个代码
if __name__ == '__main__': # 初始化谷歌浏览器驱动器
driver = init_driver() # 读取Excel 文件,把每行数据放到列表里。
list_users = read_excel() # 遍历列表,取出用户信息
for user in list_users:
# 执行填写表单操作
input_form(user)
# 最后退出浏览器
driver.quit()
Python读Excel数据自动化填入日常办公的网页表单的更多相关文章
- Python 读Excel数据
一.读取Excel数据的步骤及方式: 1.打开Excel文件 data = xlrd.open_workbook(r'D:\Interface_test\test_data\测试用例.xlsx') 2 ...
- python 读取excel数据并将测试结果填入Excel
python 读取excel数据并将测试结果填入Excel 读取一个Excel中的一条数据用例,请求接口,然后返回结果并反填到excel中.过程中会生成请求回来的文本,当然还会生成一个xml文件.具体 ...
- python 读 excel 模块: xlrd
主要来自:[ python中使用xlrd.xlwt操作excel表格详解 ] 为了方便阅读, 我将原文两个模块拆分为两篇博文: [ python 读 excel 模块: xlrd ] [ python ...
- Python读excel——xlrd
Python读excel——xlrd Python读取Excel表格,相比xlwt来说,xlrd提供的接口比较多,但过程也有几个比较麻烦的问题,比如读取日期.读合并单元格内容.下面先看看基本的操作: ...
- 使用python将excel数据导入数据库
使用python将excel数据导入数据库 因为需要对数据处理,将excel数据导入到数据库,记录一下过程. 使用到的库:xlrd 和 pymysql (如果需要写到excel可以使用xlwt) 直接 ...
- 利用python将excel数据解析成json格式
利用python将excel数据解析成json格式 转成json方便项目中用post请求推送数据自定义数据,也方便测试: import xlrdimport jsonimport requests d ...
- Python读取Excel数据
今天一同学给我发来一个Excel文件,让我帮他找一些信息,打开一开 8000多条数据.自己手工处理是不可能完成的的啦.作为一名程序员,当然要用程序来处理.处理生活中的问题当然是Python最为方便啦. ...
- Python读取Excel数据并根据列名取值
一直想将自己接触到的东西梳理一遍,可就是迈不出第一步,希望从这篇总结开始不要再做行动的矮人了. 最近测试过程中需要用到python读取excel用例数据,于是去了解和学习了下xlrd库,这里只记录使用 ...
- Python读取excel 数据
1.安装xlrd 2.官网 通过官网来查看如何使用python读取Excel,python excel官网: http://www.python-excel.org/ 实例: (1)Excel内容 把 ...
- python读Excel方法(xlrd)
在我们做平常工作或自动化测试中都会遇到操作excel,Python处理exc相当顺手,如何通过python操作excel,当然python操作excel的库有很多,比如pandas,xlwt/xlrd ...
随机推荐
- 解析 Go 编程语言数据类型:bool、整数、浮点数和字符串详细介绍
数据类型 数据类型是编程中的重要概念.数据类型指定了变量值的大小和类型.Go是静态类型的,这意味着一旦变量类型被定义,它只能存储该类型的数据. 基本数据类型 Go 有三种基本数据类型: bool:表示 ...
- Linux 使用 crontab 定时拆分日志、清理过期文件
@ 目录 前言 简介 一.准备工作 1.1 创建写入脚本 1.2 设置执行权限 1.3 添加定时任务 1.4 配置生效 二.Tomcat日志 按每天分割 2.1 创建一个 sh文件 2.2 设置执行权 ...
- DevEco Studio 3.1 Beta1版本发布——新增六大关键特性,开发更高效
智能代码编辑.端云一体化开发.低代码开发个性化-- 六大新增关键特性,开发更高效,体验更觉妙! 立即点击链接下载,做DevEco Studio 3.1 Beta1版本尝鲜者! 下载链接:HUAWE ...
- 一步一步实现 .NET 8 部署到 Docker
一.前言 本文仅针对操作系统为 CentOS 8 的环境下部署方法进行讲述.如有需要,后续将在其他文章中进行其他系统下的部署方式讲解. 二.准备工作 确保服务器已安装 docker. 可以通过命令 d ...
- 动态规划(六)——树形dp
树形dp,又称树状dp,即在树上进行的dp,在设计动态规划算法时,一般就以节点从深到浅(子树从小到大)的顺序作为dp的"阶段",dp的状态表示中,第一维通常是节点编号(代表以该节点 ...
- k8s 深入篇———— 编排[八]
前言 简单整理一下编排. 正文 一个deployment 例子: apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployme ...
- 布匹瑕疵检测数据集EDA分析
分析数据集中 train 集的每个类别的 bboxes 数量分布情况.因为训练集分了两个:train1,train2.先根据两个数据集的 anno_train.json 文件分析类别分布.数据集:布匹 ...
- tinyproxy轻量代理服务器安装
tinyproxy是一款用于POSIX操作系统的轻量级HTTP/HTTPS代理服务程序,非常小巧快速,便于部署,性能也不差,因此适合在嵌入式设备上使用,tinyproxy的仓库和文档链接分别是: 仓库 ...
- 基础 IO (Linux学习笔记)
基础IO 1.重谈文件 空文件在磁盘也要占据空间 文件 = 内容 + 属性 文件操作 = 对文件内容+对属性 or 对文件内容加属性 标定一个文件,必须使用文件路径加文件名[唯一性] 如果没有指明对应 ...
- EventBridge 集成云服务实践
简介:本篇文章主要向大家分享了通过 EventBridge 如何集成云产品事件源,如何集成云产品事件目标以及通过事件流如何集成消息产品. 作者:李凯(凯易) EvenBridge 集成概述 Even ...