找回密码
 会员注册
查看: 13|回复: 0

Python常用的10个自动化脚本(附详细源码)!

[复制链接]

4

主题

0

回帖

13

积分

新手上路

积分
13
发表于 2024-9-7 19:47:29 | 显示全部楼层 |阅读模式
前言Python是一种强大的编程语言,非常适合自动化各种任务。以下列出了Python常用于自动化的10个脚本示例,涵盖了文件管理、网络操作、数据处理等多个方面(文末附python学习资料)。1.文件备份脚本这个脚本可以定期备份指定目录下的所有文件到另一个位置。importshutilimportosimportdatetimedefbackup_files(src,dst):timestamp=datetime.datetime.now().strftime("%Y%m%d%H%M%S")forfilenameinos.listdir(src):shutil.copy(os.path.join(src,filename),os.path.join(dst,f"{timestamp}_{filename}"))if__name__=="__main__":src_dir="/path/to/source"dst_dir="/path/to/destination"backup_files(src_dir,dst_dir)2.数据下载脚本该脚本可以从网页下载数据。importrequestsdefdownload_file(url,path):response=requests.get(url)withopen(path,'wb')asfile:file.write(response.content)if__name__=="__main__":url="http://example.com/data.csv"download_file(url,"/path/to/downloaded/file.csv")3.文件重命名脚本批量重命名文件。importosdefrename_files(directory,prefix="new_prefix"):forfilenameinos.listdir(directory):new_name=f"{prefix}_{filename}"os.rename(os.path.join(directory,filename),os.path.join(directory,new_name))if__name__=="__main__":directory="/path/to/directory"rename_files(directory)4.CSV数据处理脚本读取CSV文件并进行一些基本的数据处理。importcsvdefprocess_csv(input_path,output_path):withopen(input_path,newline='')ascsvfile:reader=csv.DictReader(csvfile)fieldnames=reader.fieldnames+['new_column']withopen(output_path,'w',newline='')asoutfile:writer=csv.DictWriter(outfile,fieldnames=fieldnames)writer.writeheader()forrowinreader:row['new_column']=row['column_name']*2writer.writerow(row)if__name__=="__main__":input_path="/path/to/input.csv"output_path="/path/to/output.csv"process_csv(input_path,output_path)5.网络监控脚本监控服务器的网络连接状态。importsubprocessdefcheck_network(host="8.8.8.8",port=53):result=subprocess.run(["ping","-c","1",host],capture_output=True,text=True)ifresult.returncode==0:print("Networkisup.")else:print("Networkisdown.")if__name__=="__main__":check_network()6.自动邮件发送脚本自动发送电子邮件。importsmtplibfromemail.mime.textimportMIMETextdefsend_email(subject,message,to_addr,from_addr,password):msg=MIMEText(message)msg['Subject']=subjectmsg['From']=from_addrmsg['To']=to_addrserver=smtplib.SMTP('smtp.example.com')server.starttls()server.login(from_addr,password)server.send_message(msg)server.quit()if__name__=="__main__":subject="DailyReport"message="Thisisthedailyreport."to_addr="recipient@example.com"from_addr="sender@example.com"password="password"send_email(subject,message,to_addr,from_addr,password)7.目录同步脚本同步两个目录的内容。importshutildefsync_directories(src,dst):shutil.rmtree(dst,ignore_errors=True)shutil.copytree(src,dst)if__name__=="__main__":src_dir="/path/to/source"dst_dir="/path/to/destination"sync_directories(src_dir,dst_dir)8.网页抓取脚本抓取网页内容。importrequestsfrombs4importBeautifulSoupdeffetch_webpage(url):response=requests.get(url)soup=BeautifulSoup(response.text,'html.parser')returnsoup.prettify()if__name__=="__main__":url="http://example.com"webpage_content=fetch_webpage(url)print(webpage_content)9.日志分析脚本分析日志文件中的特定模式。importredefanalyze_logs(logfile,pattern):withopen(logfile,'r')asfile:forlineinfile:ifre.search(pattern,line):print(line.strip())if__name__=="__main__":logfile="/path/to/logfile.log"pattern=r"ERROR"analyze_logs(logfile,pattern)10.定时任务脚本使用定时器定期执行任务。importtimedefscheduled_task():whileTrue:#Yourtaskhereprint("Executingtask...")time.sleep(3600)#Sleepforanhourif__name__=="__main__":scheduled_task()结语学会了Python就业还是不用愁的,这些行业在薪资待遇上可能会有一些区别,但是整体来看还是很好的,我也不会说往哪个方向发展是最好的,各取所长选择自己最感兴趣的去学习就好。作为一个IT的过来人,我自己整理了一些python学习资料,希望对你们有帮助。朋友们如果需要可以点击下方链接或微信扫描下方二维码都可以免费获取【保证100%免费】。CSDN大礼包:《2024年最新Python全套学习资料包】免费领取(安全链接,放心点击)编程资料、学习路线图、源代码、软件安装包等!①Python所有方向的学习路线图,清楚各个方向要学什么东西②100多节Python课程视频,涵盖必备基础、爬虫和数据分析③100多个Python实战案例,学习不再是只会理论④华为出品独家Python漫画教程,手机也能学习因篇幅有限,仅展示部分图片
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 会员注册

本版积分规则

QQ|手机版|心飞设计-版权所有:微度网络信息技术服务中心 ( 鲁ICP备17032091号-12 )|网站地图

GMT+8, 2025-1-11 02:17 , Processed in 0.956613 second(s), 26 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表