Python是一种流行的编程语言,以其简洁和易读性而闻名。它提供了大量的库和模块,使其成为自动化各种任务的绝佳选择。
我们将探讨9个Python脚本及其代码,可以帮助您自动化各种任务并提高工作效率。无论您是开发人员、数据分析师还是只是想简化工作流程的人,这些脚本都能满足您的需求。
因此,强哥为大家准备了《Python 网页爬虫、文本处理、科学计算、机器学习、和数据挖掘工具集》,希望对你有些帮助,需要的朋友可以文末获取!
Python工具集
Python工具集
一、自动化文件管理
1.在目录中对文件进行排序
\# Python脚本用于按文件扩展名对目录中的文件进行排序
import os
from shutil import move
def sort\_files(directory\_path):
for filename in os.listdir(directory\_path):
if os.path.isfile(os.path.join(directory\_path, filename)):
file\_extension = filename.split('.')\[\-1\]
destination\_directory = os.path.join(directory\_path, file\_extension)
if not os.path.exists(destination\_directory):
os.makedirs(destination\_directory)
move(os.path.join(directory\_path, filename),
os.path.join(destination\_directory, filename)
这个Python脚本通过根据文件扩展名将文件分类到子目录中来整理目录中的文件。
它识别文件扩展名并将文件移动到相应的子目录中。这对于清理下载文件夹或为特定项目组织文件非常有用。
2.删除空文件
# 用Python脚本删除目录中的空文件夹
import os
def remove_empty_folders(directory_path):
for root, dirs, files in os.walk(directory_path, topdown=False):
for folder in dirs:
folder_path = os.path.join(root, folder)
if not os.listdir(folder_path):
os.rmdir(folder_path)
此Python脚本在指定目录中搜索并删除空文件夹。它可以帮助您保持整洁的文件夹结构,特别是在处理大量数据集时。
3.重命名多个文件
\# 用Python脚本重命名目录中的多个文件
import os
def rename\_files(directory\_path, old\_name, new\_name):
for filename in os.listdir(directory\_path):
if old\_name in filename:
new\_filename = filename.replace(old\_name, new\_name)
os.rename(os.path.join(directory\_path, filename),
os.path.join(directory\_path, new\_filename))
这个Python脚本允许您同时重命名目录中的多个文件。它接受旧名称和新名称作为输入,并将符合指定条件的所有文件的旧名称替换为新名称。
二、用Python进行网络爬虫
1.从网站提取数据
\# 用于网页抓取的Python脚本,从一个网站中提取数据。
import requests
from bs4 import BeautifulSoup
def scrape\_data(url):
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
\# 提取网站中相关数据的代码在这里
这个Python脚本利用requests和BeautifulSoup库从一个网站上爬取数据。它获取网页的内容,并使用BeautifulSoup解析HTML。
您可以自定义脚本以提取特定的数据,如标题、产品信息或价格。
2.批量下载图片
\# 从网站批量下载图像的Python脚本
import requests
def download\_images(url, save\_directory):
response = requests.get(url)
if response.status\_code == 200:
images = response.json() \# 假设API返回一个图片URL的JSON数组
for index, image\_url in enumerate(images):
image\_response = requests.get(image\_url)
if image\_response.status\_code == 200:
with open(f"{save\_directory}/image\_{index}.jpg", "wb") as f:
f.write(image\_response.content)
这个Python脚本旨在从网站批量下载图片。它假设该网站提供一个返回图像URL数组的JSON API。
然后,脚本遍历这些URL并下载图片,将其保存到指定目录中。
3.自动化表单提交
\# 用Python脚本自动化网站上的表单提交
import requests
def submit\_form(url, form\_data):
response = requests.post(url, data=form\_data)
if response.status\_code == 200:
\# 在表单提交后处理响应的代码放在这里
这个Python脚本通过发送带有表单数据的POST请求来自动化网站上的表单提交。
您可以通过提供URL和需要提交的必要表单数据来定制脚本。
三、文本处理和操作
1.在文本文件中计算单词数
\# Python脚本用于统计文本文件中的单词数量
def count\_words(file\_path):
with open(file\_path, 'r') as f:
text = f.read()
word\_count = len(text.split())
return word\_count
这个 Python 脚本读取一个文本文件并计算其中包含的单词数量。
它可以用于快速分析文本文档的内容,或者跟踪写作项目中的字数统计。
2.查找和替换文本
\# 在文件中查找和替换文本的Python脚本
def find\_replace(file\_path, search\_text, replace\_text):
with open(file\_path, 'r') as f:
text = f.read()
modified\_text = text.replace(search\_text, replace\_text)
with open(file\_path, 'w') as f:
f.write(modified\_text)
这个Python脚本在文件中搜索特定文本,并将其替换为所需的文本。
它可以帮助批量替换某些短语或纠正大型文本文件中的错误。
3.生成随机文本
\# 生成随机文本的Python脚本
import random
import string
def generate\_random\_text(length):
letters = string.ascii\_letters + string.digits + string.punctuation
random\_text = ''.join(random.choice(letters) for i in range(length))
return random\_text
这个Python脚本生成指定长度的随机文本。它可以用于测试和模拟,甚至可以作为创意写作的随机内容来源。
四、自动化电子邮件
1.发送个性化电子邮件
\# 用Python脚本向收件人列表发送个性化电子邮件
import smtplib
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart
def send\_personalized\_email(sender\_email, sender\_password, recipients, subject, body):
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(sender\_email, sender\_password)
for recipient\_email in recipients:
message = MIMEMultipart()
message\['From'\] = sender\_email
message\['To'\] = recipient\_email
message\['Subject'\] = subject
message.attach(MIMEText(body, 'plain'))
server.sendmail(sender\_email, recipient\_email, message.as\_string())
server.quit()
此Python脚本使您能够向一组收件人发送个性化的电子邮件。您可以自定义发件人的电子邮件、密码、主题、正文以及收件人电子邮件列表。
请注意,出于安全原因,在使用Gmail时应使用特定于应用程序的密码。
2.发送电子邮件附件
\# 使用Python脚本发送带有文件附件的电子邮件
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.base import MIMEBase
from email import encoders
def send\_email\_with\_attachment(sender\_email, sender\_password, recipient\_email, subject, body, file\_path):
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(sender\_email, sender\_password)
message = MIMEMultipart()
message\['From'\] = sender\_email
message\['To'\] = recipient\_email
message\['Subject'\] = subject
message.attach(MIMEText(body, 'plain'))
with open(file\_path, "rb") as attachment:
part = MIMEBase('application', 'octet-stream')
part.set\_payload(attachment.read())
encoders.encode\_base64(part)
part.add\_header('Content-Disposition', f"attachment; filename= {file\_path}")
message.attach(part)
server.sendmail(sender\_email, recipient\_email, message.as\_string())
server.quit()
这个Python脚本允许您发送带有文件附件的电子邮件。只需提供发件人的电子邮件、密码、收件人的电子邮件、主题、正文以及要附加的文件路径即可。
3.自动电子邮件提醒
# Python脚本发送自动电子邮件提醒
import smtplib
from email.mime.text import MIMEText
from datetime import datetime, timedelta
def send_reminder_email(sender_email, sender_password, recipient_email, subject, body, reminder_date):
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(sender_email, sender_password)
now = datetime.now()
reminder_date = datetime.strptime(reminder_date, '%Y-%m-%d')
if now.date() == reminder_date.date():
message = MIMEText(body, 'plain')
message['From'] = sender_email
message['To'] = recipient_email
message['Subject'] = subject
server.sendmail(sender_email, recipient_email, message.as_string())
server.quit()
此Python脚本根据指定日期发送自动电子邮件提醒。它对于设置重要任务或事件的提醒非常有用,确保您永远不会错过截止日期。
感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。
一、Python所有方向的学习路线
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。
二、Python必备开发工具
工具都帮大家整理好了,安装就可直接上手!
三、最新Python学习笔记
当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
四、Python视频合集
观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
五、实战案例
纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
六、面试宝典