前言

本篇内容,让你完全掌握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. 掌握 C++ 中 static 关键字的多种使用场景

    static是什么 在最开始C中引入了static关键字可以用于修饰变量和函数,后来由于C++引入了class的概念,现在static可以修饰的对象分为以下5种: 成员变量,成员函数,普通函数,局部变 ...

  2. 天气数据爬取+pyechart可视化

    数据爬取/处理 爬取深圳2021年全年的天气历史数据. 网址链接:https://lishi.tianqi.com/shenzhen/ 代码: import requests from lxml im ...

  3. Lustre架构介绍的阅读笔记-HSM

    本文是在阅读Introduction to Lustre* Architecture的Lustre HSM System Architecture时的笔记. Hierarchical Storage ...

  4. 关于集群节点timeline不一致的处理方式

    关于集群节点 timeline 不一致的处理方式 本文出处:https://www.modb.pro/db/400223 在 PostgreSQL/MogDB/openGauss 数据库日常维护过程中 ...

  5. Linux CentOs6.4 静态IP 设置

    Linux CentOs6.4 静态IP 设置 分类: IT技术 2013-04-07 09:20  2330人阅读  评论(1)  收藏  举报 To do that, just log on as ...

  6. 淘宝二面:MySQL里有2000万条数据,但是Redis中只存20万的数据,如何保证redis中的数据都是热点数据?

    引言 在当今互联网领域,尤其在大型电商平台如淘宝这样的复杂分布式系统中,数据的高效管理和快速访问至关重要.面对数以千万计的商品.交易记录以及其他各类业务数据,如何在MySQL等传统关系型数据库之外,借 ...

  7. 简单写一个eventbus

    前言 闲暇之余,简单写一个eventbus. 正文 什么是eventbus? eventbus 是一个开源的发布订阅模式的框架,用于简化程序间不同组件的通信. 它允许不同组件间松耦合通信,组件之间不通 ...

  8. 01矩阵-【BFS】

    01矩阵 给定一个由 0 和 1 组成的矩阵,找出每个元素到最近的 0 的距离.两个相邻元素间的距离为 1 ,方格斜方向不计算距离. 示例 1: 输入: [0 0 0 0 1 0 0 0 0] 输出: ...

  9. Linux系统Mariadb初始化相关(ubuntu)

    #事先声明,此文是一边写一边操作的,中间可能有不一致的地方,大体思路就是参照windows下的目录规范,将 mysql的各目录及文件进行类比放置,然后执行重建数据库命令,也许你只是想修改下data目录 ...

  10. uniapp中实现简易计算器

    uniapp中实现简易计算器主要问题:在计算器的实现过程中会遇到小数点计算精度:此计算器是依赖了uni-popup的弹出层插件,可在uniapp官方组件中查找扩展插件popup弹窗层下载,也可直接点击 ...