当前位置:   article > 正文

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

openpyxl smtplib

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

一、库的安装方法

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

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

二、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秒点击一次
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23

三、webbrower库(操作浏览器)

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

import webbrowser

chrome_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')
  • 1
  • 2
  • 3
  • 4
  • 5

四、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()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

五、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"
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16

六、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()方法读取单元格数据。最后,我们遍历工作表中的所有行和列,并打印每个单元格的值。
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

七、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}")
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Guff_9hys/article/detail/802116
推荐阅读
相关标签
  

闽ICP备14008679号