网工的生产力|分享10个Python脚本

Python 是一种多功能编程语言,以其简单易读而闻名。它广泛应用于从 Web 开发到数据分析等各个领域。在本文中,我们将探索十个 Python 脚本,它们可以通过自动执行常见任务来使您的生活更轻松。

1

使用pandas进行数据分析

Pandas是一个功能强大的数据分析和处理库。只需几行代码,您就可以读取、清理和分析来自各种来源(如 CSV 文件或数据库)的数据。以下是示例脚本:

import pandas as pd  
  
# Read data from a CSV file  
data = pd.read_csv('data.csv')  
  
# Perform basic analysis  
mean = data['column_name'].mean()  
print(f"Mean: {mean}")  

2

使用BeautifulSoup对web爬虫

BeautifulSoup是一个用于网页抓取的 Python 库。它允许您轻松地从网站提取数据。这是一个简单的网页抓取脚本:

import requests  
from bs4 import BeautifulSoup  
  
url = 'https://example.com'  
response = requests.get(url)  
soup = BeautifulSoup(response.text, 'html.parser')  
  
# Extract data from the webpage  
data = soup.find('div', class_='content')  
print(data.text  

3

文件重命名

当您需要根据特定条件重命名文件夹中的多个文件时,此脚本非常方便。例如,您可以添加前缀、后缀或替换文件名中的文本。

import os  
  
folder_path = '/path/to/folder'  
for filename in os.listdir(folder_path):  
    if filename.startswith('prefix_'):  
        new_filename = filename.replace('prefix_', 'new_prefix_')  
        os.rename(os.path.join(folder_path, filename), os.path.join(folder_path, new_filename))  

4
使用pillow调整图像大小

Pillow是一个 Python 图像库,可简化图像处理。此脚本将一批图像调整为指定的分辨率或纵横比:

from PIL import Image  
import os  
  
input_folder = '/path/to/images'  
output_folder = '/path/to/resized_images'  
desired_size = (100, 100)  
  
for filename in os.listdir(input_folder):  
    with Image.open(os.path.join(input_folder, filename)) as img:  
        img.thumbnail(desired_size)  
        img.save(os.path.join(output_folder, filename)  

5

使用ReportLab的PDF生成器

ReportLab是一个用 Python 创建 PDF 文档的库。您可以从文本或 HTML 内容生成 PDF 文件。这是一个基本示例:

从reportlab.pdfgen 导入 canvas

from reportlab.pdfgen import canvas  
  
pdf_file = 'output.pdf'  
text = 'Hello, this is a sample PDF.'  
  
c = canvas.Canvas(pdf_file)  
c.drawString(100, 750, text)  
c.save()  

6

使用smtplib自动发送邮件

需要发送自动电子邮件吗?Python 的smtplib库可以提供帮助。此脚本以编程方式发送电子邮件:

import smtplib  
from email.mime.text import MIMEText  
from email.mime.multipart import MIMEMultipart  
  
smtp_server = 'smtp.example.com'  
sender_email = 'your_email@example.com'  
receiver_email = 'recipient@example.com'  
password = 'your_password'  
  
message = MIMEMultipart()  
message['From'] = sender_email  
message['To'] = receiver_email  
message['Subject'] = 'Sample Email Subject'  
  
body = 'This is a sample email message.'  
message.attach(MIMEText(body, 'plain'))  
  
with smtplib.SMTP(smtp_server, 587) as server:  
    server.starttls()  
    server.login(sender_email, password)  
    server.sendmail(sender_email, receiver_email, message.as_string())  

7

数据备份脚本

自动备份文件和目录,确保数据安全:

import shutil  
  
source_folder = '/path/to/source_folder'  
backup_folder = '/path/to/backup_folder'  
  
shutil.copytree(source_folder, backup_folder)  

8

密码生成器

生成强而随机的密码以提高安全性:

import random  
import string  
  
def generate_password(length=12):  
    characters = string.ascii_letters + string.digits + string.punctuation  
    return ''.join(random.choice(characters) for _ in range(length))  
  
password = generate_password()  
print(password)  

9

简单微博服务器

创建一个用于测试和开发的基本 HTTP 服务器:

import http.server  
import socketserver  
  
port = 8000  
  
with socketserver.TCPServer(('', port), http.server.SimpleHTTPRequestHandler) as httpd:  
    print(f"Serving at port {port}")  
    httpd.serve_forever(  

10

Database Backup and Restore using SQLite

SQLite 是一个 C 库,它提供了一个轻量级的基于磁盘的数据库,不需要单独的服务器进程,并允许使用 SQL 查询语言的非标准变体访问数据库。一些应用程序可以使用 SQLite 进行内部数据存储。还可以使用 SQLite 制作应用程序原型,然后将代码移植到更大的数据库(如PostgreSQL 或 Oracle)。

下面将给大家提供一个使用 Python 来备份和恢复 SQLite 数据库的示例代码,SQLite 是一个轻量级且常用的数据库系统

import sqlite3  
import shutil  
  
# Database file paths  
source_db_file = 'source.db'  
backup_db_file = 'backup.db'  
  
# Function to create a backup of the SQLite database  
def backup_database():  
    try:  
        shutil.copy2(source_db_file, backup_db_file)  
        print("Backup successful.")  
    except Exception as e:  
        print(f"Backup failed: {str(e)}")  
  
# Function to restore the SQLite database from a backup  
def restore_database():  
    try:  
        shutil.copy2(backup_db_file, source_db_file)  
        print("Restore successful.")  
    except Exception as e:  
        print(f"Restore failed: {str(e)}")  
  
# Usage  
while True:  
    print("Options:")  
    print("1. Backup Database")  
    print("2. Restore Database")  
    print("3. Quit")  
    choice = input("Enter your choice (1/2/3): ")  
  
    if choice == '1':  
        backup_database()  
    elif choice == '2':  
        restore_database()  
    elif choice == '3':  
        break  
    else:  
        print("Invalid choice. Please enter 1, 2, or 3.")  

在此代码中:

backup_database()函数复制源 SQLite 数据库文件并将其命名为备份文件。您可以运行此函数来创建数据库的备份。

restore_database()函数将备份文件复制回源文件,有效地将数据库恢复到创建备份时的状态。

向用户提供备份数据库、恢复数据库或退出程序的选项。

您可以调整source_db_file和backup_db_file变量来指定 SQLite 源和备份数据库文件的路径。

  • 18
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值