前言

本篇内容,让你完全掌握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数据自动化填入日常办公的网页表单的更多相关文章

  1. Python 读Excel数据

    一.读取Excel数据的步骤及方式: 1.打开Excel文件 data = xlrd.open_workbook(r'D:\Interface_test\test_data\测试用例.xlsx') 2 ...

  2. python 读取excel数据并将测试结果填入Excel

    python 读取excel数据并将测试结果填入Excel 读取一个Excel中的一条数据用例,请求接口,然后返回结果并反填到excel中.过程中会生成请求回来的文本,当然还会生成一个xml文件.具体 ...

  3. python 读 excel 模块: xlrd

    主要来自:[ python中使用xlrd.xlwt操作excel表格详解 ] 为了方便阅读, 我将原文两个模块拆分为两篇博文: [ python 读 excel 模块: xlrd ] [ python ...

  4. Python读excel——xlrd

    Python读excel——xlrd Python读取Excel表格,相比xlwt来说,xlrd提供的接口比较多,但过程也有几个比较麻烦的问题,比如读取日期.读合并单元格内容.下面先看看基本的操作: ...

  5. 使用python将excel数据导入数据库

    使用python将excel数据导入数据库 因为需要对数据处理,将excel数据导入到数据库,记录一下过程. 使用到的库:xlrd 和 pymysql (如果需要写到excel可以使用xlwt) 直接 ...

  6. 利用python将excel数据解析成json格式

    利用python将excel数据解析成json格式 转成json方便项目中用post请求推送数据自定义数据,也方便测试: import xlrdimport jsonimport requests d ...

  7. Python读取Excel数据

    今天一同学给我发来一个Excel文件,让我帮他找一些信息,打开一开 8000多条数据.自己手工处理是不可能完成的的啦.作为一名程序员,当然要用程序来处理.处理生活中的问题当然是Python最为方便啦. ...

  8. Python读取Excel数据并根据列名取值

    一直想将自己接触到的东西梳理一遍,可就是迈不出第一步,希望从这篇总结开始不要再做行动的矮人了. 最近测试过程中需要用到python读取excel用例数据,于是去了解和学习了下xlrd库,这里只记录使用 ...

  9. Python读取excel 数据

    1.安装xlrd 2.官网 通过官网来查看如何使用python读取Excel,python excel官网: http://www.python-excel.org/ 实例: (1)Excel内容 把 ...

  10. python读Excel方法(xlrd)

    在我们做平常工作或自动化测试中都会遇到操作excel,Python处理exc相当顺手,如何通过python操作excel,当然python操作excel的库有很多,比如pandas,xlwt/xlrd ...

随机推荐

  1. 携手HMS Core统一扫码服务, 兴业证券优理宝App提升用户扫码体验

    兴业证券优理宝App联合华为HMS Core,集成HMS Core统一扫码服务,在提升扫码成功率的同时,还支持C端用户用手机端APP扫描手表端二维码,实现行情在手机与手表间跨终端流转,行情信息,抬腕可 ...

  2. openGauss数据库将磁盘表转换为MOT

    openGauss 数据库将磁盘表转换为 MOT 一.将磁盘表转换为 MOT 方法 磁盘表直接转换为 MOT 尚不能实现,这意味着尚不存在将基于磁盘的表转换为 MOT 的 ALTER TABLE 语句 ...

  3. Python3中pip3命令的用法介绍及安装配置

    第一节:pip3是什么?有啥用? pip3:(Python3 Install Package ),这个英文全称是我为了更好的理解这个命令这么叫的,官方没有这对个命令的全称的解释:) python 支持 ...

  4. css test-align 和 margin 居中什么区别

    共同点 test-align 和margin 都可以居中: test-align:Center. margin: 0 auto. 很好但是看下区别: <div style="backg ...

  5. React 逃离闭包陷阱

    众所周知,JavaScript 中的闭包(Closures)一定是这种语言最可怕的特性之一,即使是无所不知的 ChatGPT 也是这样说的.另外它可能也是最隐蔽的语言特性之一,我们在编写 React  ...

  6. logging模块简介python

    1 logging模块简介 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等:相比print,具备如下优点: 可以通过设置不同 ...

  7. 深入了解PBKDF2:密码学中的关键推导函数

    title: 深入了解PBKDF2:密码学中的关键推导函数 date: 2024/4/20 20:37:35 updated: 2024/4/20 20:37:35 tags: 密码学 对称加密 哈希 ...

  8. 第十課-Change Mirth Connect To Mariadb

    随着接口部署数量和交互数据越来越多,原来基于Mirth Connect默认derby嵌入式数据库下运行越来越不能满足高性能.高可靠等线上刚性需求:故需要切换Mirth Connect的运行后台数据库. ...

  9. CF1535F String Distance

    \(CF1535F\ \ String\ Distance\) 题意 给 \(n\) 个长度均为 \(len\) 的字符串 \(T_1,T_2,\dots T_n\),定义 \(f(a,b)\) 为将 ...

  10. 谈谈C++新标准带来的属性(Attribute)

    简介: 从C++11开始,标准引入了一个新概念"属性(attribute)",本文将简单介绍一下目前在C++标准中已经添加的各个属性以及常用属性的具体应用. 作者 | 寒冬来源 | ...