python自动化脚本

人气:280 ℃/2023-01-19 02:19:41

如何用python编写自动化脚本呢?下面我们就一起来学习一下吧!

安装好selenium和python后,我们就可以开始编写脚本了,安装过程中需要注意的是selenium3.0需要独立安装Firefox驱动。

以下是python编写自动化脚本的具体示例。

打开IDLE,通过快捷键ctrl+n打开一个新窗口,在新窗口输入以下代码:

# coding = utf-8from selenium import webdriver

browser = webdriver.Firefox()

browser.get("http://www.baidu.com")

browser.find_element_by_id("kw").send_keys("selenium")

browser.find_element_by_id("su").click()

browser.quit()

保存为test1.py,通过快捷键F5运行脚本,可看到脚本启动Firefox 浏览器进入百度页,输入“selenium” 点击搜索按钮,最后关闭浏览器的过程。脚本即完成了~

代码解析:

# coding = utf-8

为了防止乱码问题,以及在程序中添加中文注释,把编码统一成UTF-8;

from selenium import webdriver

导入selenium的webdriver包,导入webdriver包后才能使用 webdriver API 进行自动化脚本开发;

browser = webdriver.Firefox()

将控制的webdriver 的 Firefox 赋值给 browser;获得了浏览器对象才可以启动浏览器;

browser.get("http://www.baidu.com")

获得浏览器对象后,通过get()方法,向浏览器发送网址;

browser.find_element_by_id("kw").send_keys("selenium")

通过id=kw 定位到百度的输入框,并通过键盘方法send_keys()向输入框里输入selenium ;

browser.find_element_by_id("su").click()

通过id=su 定位到搜索按钮,并向按钮发送单击事件(click() ) ;

browser.quit()

退出并关闭窗口的每一个相关的驱动程序。

关于如何用python编写自动化脚本,我们就分享到这啦!

python自动化脚本怎么写

我帮公司财务写了个“群发工资条”的 Python 脚本

来源 | 数据分析与统计学之美

本文介绍

这是一个很好的Python自动化的案例。对于小公司,采用手动方式一个个发送邮件还是可以的。如果一个上百号,上千号,或者更大规模的公司,我们再一个个发送工资条邮件,就太浪费时间了。鉴于此,我写了一个这样的程序,实现Python自动化群发工资条的功能。

原始数据源如下:

最终效果如下:

看到这里,你肯定也觉得很好玩儿吧?那么这样一个自动化程序,应该怎么做呢?接着往下看。

流程分析

其实这样一个代码,总结下来,就只有如下5步:

① 导入相关模块;

② 读取Excel表格;

③ 登录邮箱;

④ 准备要发送的邮件正文;

⑤ 发送邮件;

1)导入相关模块

from openpyxl import load_workbook # 用于操作Excel的模块import yagmail # 用于存储邮箱地址和密码的模块import keyring # 用于记录你邮箱地址和密码的模块from datetime import * # 用于获取当前系统时间的模块

2)读取Excel表格

# 加载Excel文件wb = load_workbook("群发工资条.xlsx",data_only=true)sheet = wb.activeprint(sheet)-------------------------------------------------------for row in sheet: row_text = "" for cell in row: if cell.column == "B": continue row_text = f"{cell.value}," print(row_text)------------------------------------------------------print("年:", date.today.year)print("月:", date.today.month)print(f"{date.today.year}-{date.today.month}月")

结果如下:

3)登录邮箱

yagmail.register("1127421544@qq.com","flmyucvntuvbjbcb")pwd = keyring.get_password("yagmail","1127421544@qq.com")yag = yagmail.SMTP(user="1127421544@qq.com",host="smtp.qq.com",password=pwd)

需要注意的是:第一行代码是用于存储你的邮件地址和密码。第二行代码使用keyring是为了记录你的邮件地址和密码。第三行代码直接登录邮箱。

关于Python怎么发送邮件,我之前写了一篇文章,进行了详细的介绍,下方是这篇文章的链接,大家可以参考。

Python发邮件:http://suo.im/60ylZ1

4)准备要发送的正文

由于发送的正文里面,需要我们发送一个带表格的邮件,这就有必要我们了解一点前端知识。因此,我在最后面花一个章节为大家讲解。

5)发送邮件

yag.send(f"{email}",f"数据分析与统计学之美有限公司{date.today.year}-{date.today.month}月工资情况",contents)

上述代码共有3个参数:第一个参数是收件人的邮箱;第二个参数是邮件的标题;第三个参数是发送的内容。

关于html代码的特别说明

会用Python发送邮件的人都知道,邮件正文内容可以写html代码。你可能觉得自己啥也不会,但是不用担心,我们不需要学习太高深的前端代码,做过爬虫的人耳濡目染,都能够看懂一些。

1)自己写一个简单的前端代码

我们可以直接用Pycharm创建一个新的html文件,里面会显示初始的前端代码,我们进行简单的添加,就可以获得一个表格啦!

最终在浏览器中显示效果如下:

从上图中根本看不出这是一个表格,那是因为我们没有为它设置一个样式,下面要做的就是为表格设置样式。

最终在浏览器中显示效果如下:

2)在Python中怎么写前端代码

从上图可以看出,整个前端代码就是用一些列的标签组成,同时标签都是成对出现的。因此,在Python中写前端代码时,只需要在对应位置添加对应的标签即可。

for row in sheet: row_text = "<tr>" for cell in row: if cell.column == "B": continue row_text = f"<td>{cell.value}</td>" row_text = "</tr>" print("\n") print(row_text)

结果如下:

完整代码

为了文章的完整性,我在文章最后放上我的代码。但是限于文章篇幅,最后我只粘贴一张图片,详细代码,大家可以去文末获取。

推荐

首页/电脑版/网名
© 2025 NiBaKu.Com All Rights Reserved.