6个Python办公黑科技,助你提升工作效率

  

以下是“6个Python办公黑科技,助你提升工作效率”的完整攻略。

概述

本文介绍了6个Python办公黑科技,它们分别是:批量重命名、批量压缩、批量转换格式、自动发送邮件、网页自动化、PDF文本提取。通过使用这些技巧,你可以提高在工作中的效率,减少很多重复性工作。

1. 批量重命名

批量重命名可以帮助你快速重命名文件夹中的多个文件。使用Python的os模块和re模块可以实现该功能。示例代码如下:

import os
import re

def rename_files():
    file_list = os.listdir(r"文件夹路径") #修改文件夹路径
    for file_name in file_list:
        new_file_name = re.sub(r'[0-9]+', '', file_name) #将文件名中所有数字都替换为空
        os.rename(os.path.join(r"文件夹路径", file_name), os.path.join(r"文件夹路径", new_file_name))

2. 批量压缩

如果你需要将多个文件进行压缩可以使用Python的zipfile模块。该模块提供了压缩和解压缩的功能。示例代码如下:

import zipfile

def compress_files():
    folder_path = "文件夹路径" #修改目录路径
    zip_name = "压缩文件名.zip" #设置压缩文件名
    zip_file = zipfile.ZipFile(zip_name, 'w', zipfile.ZIP_DEFLATED)
    for dirpath, dirnames, filenames in os.walk(folder_path):
        for filename in filenames:
            zip_file.write(os.path.join(dirpath, filename), filename)
    zip_file.close()

3. 批量转换格式

如果你需要格式转换多个文件,可以使用Python的pandas库来读取和写入数据,使用pywin32库来转换文件格式。示例代码如下:

import pandas as pd
import win32com.client

def convert_format():
    excel_file = "excel文件路径" # 设置excel文件路径
    output_file = "输出文件路径" # 设置输出文件路径
    excel_app = win32com.client.Dispatch("Excel.Application")
    excel_app.Visible = False
    excel_workbook = excel_app.Workbooks.Open(excel_file, None,True, None, None, None, True, None, None, False, False, None, False, None)
    for sheet in excel_workbook.Worksheets:
        sheet.Copy(None, sheet)
        new_sheet = excel_workbook.ActiveSheet
        new_sheet.SaveAs(output_file, FileFormat=win32com.client.constants.xlCSV, CreateBackup=False)
        new_sheet.Close()

    excel_workbook.Close()
    excel_app.Quit()

4. 自动发送邮件

如果你需要自动发送邮件,可以使用Python的smtplib和email库。示例代码如下:

import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

def send_email():
    MAIL_HOST = 'smtp.163.com'
    MAIL_USER = '发件人邮箱'
    MAIL_PASS = '发件人邮箱授权码'
    MAIL_TO = '收件人邮箱'
    message = MIMEMultipart()
    message['From'] = MAIL_USER
    message['To'] = MAIL_TO
    message['Subject'] = '邮件主题'
    content = '这是一封邮件'
    message.attach(MIMEText(content, 'plain'))
    smtpObj = smtplib.SMTP()
    smtpObj.connect(MAIL_HOST, 25)
    smtpObj.login(MAIL_USER, MAIL_PASS)
    smtpObj.sendmail(MAIL_USER, MAIL_TO, message.as_string())
    print('邮件发送成功')
    smtpObj.quit()

5. 网页自动化

如果你需要自动化操作网页,可以使用Python的selenium库。示例代码如下:

from selenium import webdriver

def website_auto():
    browser = webdriver.Chrome('chromedriver.exe的路径') #调用Chrome浏览器
    browser.get('网页URL') #打开网页
    element = browser.find_element_by_id('搜索框id') #定位搜索框
    element.send_keys('搜索内容') #输入搜索关键字
    element.submit() #提交搜索
    results = browser.find_elements_by_css_selector('搜索结果的CSS选择器') #定位搜索结果
    #进行后续操作,比如取出链接
    print(results[0].get_attribute('href'))
    browser.quit() #关闭浏览器

6. PDF文本提取

如果你需要提取PDF文件中的文本,可以使用Python的PyPDF2库。示例代码如下:

from PyPDF2 import PdfFileReader

def extract_text():
    with open('pdf文件路径', 'rb') as f:
        pdfReader = PdfFileReader(f)
        for pageNum in range(pdfReader.numPages):
            pageObj = pdfReader.getPage(pageNum)
            print(pageObj.extractText())

以上就是“6个Python办公黑科技,助你提升工作效率”的详细攻略。

相关文章