(五)Python中第三方常用库(webbrower、pyautogui、smtplib、xlwt、xlrd、openpyxl等)

news/2024/2/27 9:53:42

文章目录

  • 一、库的安装方法
  • 二、pyautogui库(模拟键盘按键、鼠标操作和GUI交互)
  • 三、webbrower库(操作浏览器)
  • 四、smtplib库(模拟发送邮件)
  • 五、xlwt库(操作Excel写入数据)
  • 六、xlrd库(操作Excel读出数据)
  • 七、openpyxl库(操作Excel写入/读出数据)

  脚本的编写、查询要多使用AI辅助!!!

一、库的安装方法

  安装好Python后,在命令行执行下述代码:

$> python -m pip install --upgrade pip      #更新pip到最新版本
$> pip install <库名>                        #安装指定库,如pip install webbrowser

二、pyautogui库(模拟键盘按键、鼠标操作和GUI交互)

  模拟鼠标点击左键的代码:

import pyautogui  
import time  
import random  # 初始化点击次数  
click_count = 0  def click_randomly():  global click_count  # 随机获取屏幕的宽度和高度  screen_width, screen_height = pyautogui.size()  # 生成一个随机的屏幕坐标(在屏幕范围内)  x = random.randint(0, screen_width)y = random.randint(0, screen_height)  # 模拟鼠标左键点击  pyautogui.click(x, y, button='left')  click_count += 1  print(f"第 {click_count} 次点击: ({x}, {y})")  while True:  click_randomly()  time.sleep(2*60)  # 每隔120秒点击一次

三、webbrower库(操作浏览器)

  控制打开指定浏览器的特定的URL的代码:

import webbrowserchrome_path = 'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'
webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(chrome_path))
webbrowser.get('chrome').open('https://www.baidu.com')

四、smtplib库(模拟发送邮件)

  使用Python的smtplib库,可以连接到SMTP服务器,并发送邮件。可以设置发件人、收件人、主题和内容等信息,然后调用sendmail()方法发送邮件:

import smtplib
from email.mime.text import MIMEText# 设置发件人、收件人和邮件内容
sender = "sender@example.com"
receiver = "receiver@example.com"
message = MIMEText("This is a test email.")
message["Subject"] = "Test Email"
message["From"] = sender
message["To"] = receiver# 发送邮件
smtp_server = "smtp.example.com"
smtp_port = 25
smtp = smtplib.SMTP(smtp_server, smtp_port)
smtp.sendmail(sender, receiver, message.as_string())
smtp.quit()

五、xlwt库(操作Excel写入数据)

  xlwt模块是python中专门用于写入Excel的拓展模块,可以实现创建表单、写入指定单元格、指定单元格样式等功能:
  xlwt库只支持.xls格式的Excel文件,而不支持.xlsx格式的Excel文件。

import xlwt  # 创建一个Workbook对象,这就相当于创建了一个Excel文件  
book = xlwt.Workbook(encoding='utf-8', style_compression=0)  
# 创建一个sheet对象,sheet的名字为'Sheet1'  
sheet = book.add_sheet('Sheet1')  # 写入数据,参数分别为行号、列号、数据  
sheet.write(0, 0, 'Hello')  # 在第0行第0列写入'Hello'  
sheet.write(0, 1, 'World')  # 在第0行第1列写入'World'  # 最后将以上操作保存到指定的Excel文件中  
book.save('test.xls')#运行上述代码后,会在当前目录下生成一个名为test.xls的Excel文件,其中包含一个名为Sheet1的工作表,
#第0行第0列的单元格内容为"Hello",第0行第1列的单元格内容为"World"

六、xlrd库(操作Excel读出数据)

  xlrd是一个用于读取Excel文件的Python库。它支持.xls和.xlsx格式的文件,可以提取工作表中的数据,并将其转换为Python数据结构(列表):
  注意:xlrd库只支持读取旧的.xls格式的文件,对于新的.xlsx格式的文件,可能需要使用openpyxl或其他类似的库。

import xlrd  # 打开Excel文件  
workbook = xlrd.open_workbook('example.xls')  
# 获取所有工作表名  
sheet_names = workbook.sheet_names()    
# 选择要读取的工作表  
sheet = workbook.sheet_by_name(sheet_names[0])    # 遍历行和列数据  
for row in range(sheet.nrows):  for col in range(sheet.ncols):  cell_value = sheet.cell(row, col).value  print(cell_value)#上面的代码中,我们首先使用xlrd.open_workbook()函数打开一个Excel文件,并获取该文件中的所有工作表名。然后,我们选择要读取的工作表,
#并使用sheet.cell()方法读取单元格数据。最后,我们遍历工作表中的所有行和列,并打印每个单元格的值。

七、openpyxl库(操作Excel写入/读出数据)

  openpyxl是一个功能强大的库,用于读写Excel 2010 xlsx/xlsm/xltx/xltm文件。它支持对Excel文件的读取、写入以及格式化单元格、设置公式等操作。

import openpyxl  # 打开Excel文件  
workbook = openpyxl.load_workbook('example.xlsx')  
# 选择工作表  
worksheet = workbook['Sheet1']  # 写入数据  
worksheet['A1'] = 'Name'  
worksheet['B1'] = 'Age'  
worksheet['C1'] = 'Gender'  
worksheet['A2'] = 'John'  
worksheet['B2'] = 25  
worksheet['C2'] = 'Male'  # 保存Excel文件  
workbook.save('example.xlsx')  # 重新打开Excel文件  
workbook = openpyxl.load_workbook('example.xlsx')  
# 选择工作表  
worksheet = workbook['Sheet1']  # 读取数据  
name = worksheet['A2'].value  
age = worksheet['B2'].value  
gender = worksheet['C2'].value  # 打印读取的数据  
print(f"Name: {name}")  
print(f"Age: {age}")  
print(f"Gender: {gender}")

参考:https://www.runoob.com/python3/python3-tutorial.html


http://www.ppmy.cn/news/1324350.html

相关文章

【数据结构】栈的远房亲戚——队列

队列的基本概念 前言一、队列的定义二、队列的重要术语三、队列的基本操作四、数据结构的三要素4.1 线性表的三要素4.2 栈的三要素4.3 队列的三要素 结语 前言 大家好&#xff0c;很高兴又和大家见面啦&#xff01;&#xff01;&#xff01; 在经过前面内容的介绍&#xff0c;…

2018年认证杯SPSSPRO杯数学建模B题(第一阶段)动态模糊图像全过程文档及程序

2018年认证杯SPSSPRO杯数学建模 B题 动态模糊图像 原题再现&#xff1a; 人眼由于存在视觉暂留效应&#xff0c;所以看运动的物体时&#xff0c;看到的每一帧画面都包含了一段时间内 (大约 1/24 秒) 的运动过程&#xff0c;所以这帧画面事实上是模糊的。对电影的截图来说&…

【Leetcode】269.火星词典(Hard)

一、题目 1、题目描述 现有一种使用英语字母的火星语言,这门语言的字母顺序与英语顺序不同。 给你一个字符串列表 words ,作为这门语言的词典,words 中的字符串已经 按这门新语言的字母顺序进行了排序 。 请你根据该词典还原出此语言中已知的字母顺序,并 按字母递增顺序…

Ubuntu1804下如何切换python版本

Ubuntu1804下如何切换python版本 目录 1 如何查看当前python版本 2 如何配置默认python版本 2.1 配置python2为默认版本 2.2 配置python3为默认版本 3 小结 1 如何查看当前python版本 可以用过以下命令&#xff0c;查看当前python默认版本&#xff1a; python --version2 …

面试的那些事儿

先从面试来说 假如你是网申&#xff0c;你的简历必然会经过HR的筛选&#xff0c;一张简历HR可能也就花费10秒钟看一下&#xff0c;然后HR 就会决定你这一关是Fail还是Pass。 假如你是内推&#xff0c;如果你的简历没有什么优势的话&#xff0c;就算是内推你的人再用心&#x…

适合进阶学习的 机器学习 开源项目(可快速下载)

目录 开源项目合集[>> 开源的机器学习平台&#xff1a;mlflow/mlflow](https://gitcode.com/mlflow/mlflow)[>> 机器学习路线图&#xff1a;mrdbourke/machine-learning-roadmap](https://gitcode.com/mrdbourke/machine-learning-roadmap)[>> 机器学习理论和…

项目开发中安全问题及解决方法----请求头中信息仅供参考

有下面案例&#xff1a; Slf4j RequestMapping("trustclientip") RestController public class TrustClientIpController {HashSet<String> activityLimit new HashSet<>();GetMapping("test")public String test(HttpServletRequest reques…

[labelme]labelme如何将标注的json格式转成png的mask文件掩码文件

labelme工具不仅仅具有标注功能&#xff0c;而且可以将json文件转化为png的分割训练文件&#xff0c;如果您是一个类别则可以直接用labelme_json_to_dataset进行转换最后提取对应的掩码文件即可进行语义分割训练。如果您是>2个类别则不推荐使用labelme工具进行转换&#xff…

K8s(二)Pod资源——node调度策略、node亲和性、污点与容忍度

目录 node调度策略nodeName和nodeSelector 指定nodeName 指定nodeSelector node亲和性 node节点亲和性 硬亲和性 软亲和性 污点与容忍度 本文主要介绍了在pod中&#xff0c;与node相关的调度策略&#xff0c;亲和性&#xff0c;污点与容忍度等的内容 node调度策略node…

前端常用js、css效果

前端常用js效果 效果参考代码文本横向滚动文本无限滚动无缝轮播无缝滚动盒子上下移动樱花飘落 效果 主要整理了几个常用的&#xff0c;方便平时做项目的时候参考 文本横向滚动 文本无限滚动 无缝轮播 无缝滚动 盒子上下滚动 樱花飘落效果 参考代码 文本横向滚动 <!DOCTYP…

深入了解性能优化(web应用)

影响一个系统性能的方方面面 一个 web应用不是一个孤立的个体,它是一个系统的部分,系统中的每一部分都会影响整个系统的性能 一.常用的性能评价/测试指标 1.响应时间 提交请求和返回该请求的响应之间使用的时间,一般比较关注平均响应时间。 常用操作的响应时间列表: 操作 响应…

What is `XSS` does?

跨站脚本攻击&#xff08;Cross-Site Scripting&#xff0c;XSS&#xff09;是一种针对网站应用程序的安全漏洞&#xff0c;允许攻击者将恶意脚本注入到其他用户查看的网页中。当这些用户访问受感染的页面时&#xff0c;他们的浏览器会执行这些恶意脚本&#xff0c;导致各种安全…

flink 1.18 sql demo

flink 1.18 sql demo 更换flink-table-planner 为 flink-table-planner-loader pom.xml <dependencies><!-- https://mvnrepository.com/artifact/org.apache.flink/flink-table-api-java-uber --><dependency><groupId>org.apache.flink</groupId…

学校服务器安装anaconda并配置pytorch环境

学校服务器安装anaconda并配置pytorch环境 1.下载Anaconda2.传到xftp中3.在终端运行脚本命令4.安装pytorch4.1 查看cuda版本4.2 创建自己的环境4.3 下载pytorch4.4 验证pytorch是否安装成功 参考视频&#xff1a;远程服务器安装anaconda并配置pytorch环境 使用服务器运行项目&a…

力扣刷MySQL-第四弹(详细讲解)

&#x1f389;欢迎您来到我的MySQL基础复习专栏 ☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克&#x1f379; ✨博客主页&#xff1a;小小恶斯法克的博客 &#x1f388;该系列文章专栏&#xff1a;力扣刷题讲解-MySQL &#x1f379;文章作者技术和水平很有限&#xff0c;如果文中出…

Druid连接池工具公式化SQL附踩坑记录

1. 需求 使用Druid连接池工具格式化sql用于回显时候美观展示 2. 代码示例 2.1 依赖 <dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.2.6</version> </dependency> 2.2 ParseUtils…

人大金仓逻辑备份与还原以及报错The authentication type 10 is not supported

逻辑备份 sys_dump 备份 切换用户 su - kingbase 进入到逻辑备份工具目录 /data/KingbaseES/ES/V8/ClientTools/bin ./sys_dump -Ukexue -dv82sp1 -p54321 -Fp >/data/databakfile/2024-01-13v82sp1-2.sql参数-F表示文件输出格式&#xff0c;p为plain模式&#xff0c;这里输…

行为树(Behavior Trees)

行为树&#xff08;Behavior Trees&#xff09;是一种在游戏开发中广泛使用的AI设计模式&#xff0c;主要用于描述AI的行为和决策过程&#xff0c;实现更加智能和自然的游戏AI。它由多个节点组成&#xff0c;每个节点代表一个行为或决策&#xff0c;按照特定的方式连接在一起&a…

【C++干货铺】红黑树 (Red Black Tree)

个人主页点击直达&#xff1a;小白不是程序媛 C系列专栏&#xff1a;C干货铺 代码仓库&#xff1a;Gitee 目录 前言 红黑树的概念 红黑树的性质 红黑树结点的定义 红黑树的插入操作 插入新的结点 检查规则进行改色 情况一 情况二 情况三 插入完整代码 红黑树的验…

阿里云服务器哪个地域好?地域选择的影响因素与建议

阿里云服务器地域和可用区怎么选择&#xff1f;地域是指云服务器所在物理数据中心的位置&#xff0c;地域选择就近选择&#xff0c;访客距离地域所在城市越近网络延迟越低&#xff0c;速度就越快&#xff1b;可用区是指同一个地域下&#xff0c;网络和电力相互独立的区域&#…
最新文章