用这5个Python自动化脚本,提升你的Python变成效率。
微信搜索关注《Python学研大本营》,加入读者群,分享更多精彩
为了提升Python编程的效率,我总结了一份Python脚本的独家秘籍,并对一些Python的功能进行了提升。
简介
Python是一门强大的编程语言,可以用来实现各种任务的自动化。无论是用来开发小项目还是大型企业应用,Python都可以帮助你节省时间和简化工作流程。
Python还是一门很容易入门的语言,因为它的语法简单得令人难以置信。一个初级程序员用10行Python代码就能完成的事情,在Javascript或C++这样的语言中却需要20行。下面是一个简单的网络请求的例子:
import requests
r = requests.get(“https://www.python.org")
print(r.status_code)
print(r.text)
相比之下,下面的JavaScript代码做了完全相同的请求,却需要三倍的代码:
fetch(“https://www.python.org")
.then(res => {if(res.ok) {return res.text();} else {throw new Error(“HTTP error, status = “ + res.status);}
})
.then(text => {console.log(text);
})
.catch(error => {console.log(error);
});
正如你所看到的,Python代码远比JavaScript代码更简单,这使它成为自动化重复性任务的理想选择,如网络爬虫、数据收集或翻译。下面是我最喜欢的五项用Python实现自动化的重复性任务。
URL缩短器
import pyshortenerss = pyshorteners.Shortener(api_key="YOUR_KEY")long_url = input("Enter the URL to shorten: ")short_url = s.bitly.short(long_url)print("The shortened URL is: " + short_url)
Pyshorteners库是在URL缩短方面的最常用的工具,它可以用于各种项目。对于大多数链接缩短器,你需要一个API密钥,但它们通常是免费的,除非你预计会有数十万个请求。我发现像Bit.ly、Adf.ly和Tinyurl这样的API对于SaaS应用和Telegram机器人这样的东西来说是非常好的。
创建虚假信息
import pandas as pd
from faker import Faker# 创建对象
fake = Faker()# 生成数据
fake.name()
fake.text()
fake.address()
fake.email()
fake.date()
fake.country()
fake.phone_number()
fake.random_number(digits=5)# 创建Dataframe
fakeDataframe = pd.DataFrame({‘date’:[fake.date() for i in range(5)],‘name’:[fake.name() for i in range(5)],‘email’:[fake.email() for i in range(5)],‘text’:[fake.text() for i in range(5)]})
print(fakeDataframe)
如果需要创建一个假人,faker库为你提供了一个Faker类,可以自动生成一个完整的人。这个脚本创建了几个不同的人,并将其存储在一个数据框架中,这是一个稍微复杂的概念。如果我不得不把信息提供给可疑的网站,或者我不想让任何东西追溯到我身上,我就会使用这些假数据。
Youtube视频下载器
from pytube import YouTubelink = input("Enter a youtube video's URL") # 例如 https://youtu.be/dQw4w9WgXcQyt = Youtube(link)
yt.streams.first().download()print("downloaded", link)
这段代码很简单。它使用Pytube库将提供的任何链接转换为文件,然后下载它。虽然只有五行代码,没有API速率限制,你可以把它和另一个脚本结合起来,转录视频,并使用情感分析来确定视频包含什么样的内容。
NATO注音字母加密器
def encrypt_message(message):nato_alphabet = {‘A’: ‘Alfa’, ‘B’: ‘Bravo’, ‘C’: ‘Charlie’, ‘D’: ‘Delta’,‘E’: ‘Echo’, ‘F’: ‘Foxtrot’, ‘G’: ‘Golf’, ‘H’: ‘Hotel’,‘I’: ‘India’, ‘J’: ‘Juliet’, ‘K’: ‘Kilo’, ‘L’: ‘Lima’,‘M’: ‘Mike’, ’N’: ‘November’, ‘O’: ‘Oscar’, ‘P’: ‘Papa’,‘Q’: ‘Quebec’, ‘R’: ‘Romeo’, ‘S’: ‘Sierra’, ‘T’: ‘Tango’,‘U’: ‘Uniform’, ‘V’: ‘Victor’, ‘W’: ‘Whiskey’, ‘X’: ‘Xray’,‘Y’: ‘Yankee’, ‘Z’: ‘Zulu’}encrypted_message = “”# 对消息中的字母进行迭代for letter in message:# 如果字典中有该字母,则将对应的值添加到加密信息中if letter.upper() in nato_alphabet:encrypted_message += nato_alphabet[letter.upper()] + “ “# 如果字典中有该字母,则将该字母添加到加密信息中else:encrypted_message += letterreturn encrypted_messagemessage = "Hello World"
encrypted_message = encrypt_message(message)
print("Encrypted message: ", encrypted_message)
这个函数对传入其输入参数的任何信息进行编码,并输出相应的NATO单词序列。这样做是正确的,因为它检查每个字符是否在nato_alphabet字典中,如果是,它将被附加到加密的消息中。如果该字符在字典中找不到(如果是空格、冒号或任何不属于a-z的字符),就直接添加到结果中,没有任何特殊编码。因此,"Hello World "变成 "Hotel Echo Lima Lima Oscar" "Whiskey Oscar Romeo Lima Delta"。
社会媒体登录自动化
from selenium import webdriverdriver = webdriver.Firefox()
driver.get(“https://www.facebook.com/")# 定位email和电话字段,并输入
email_field = driver.find_element_by_id(“email”)
email_field.send_keys(“your_email_or_phone”)# 定位密码字段,并输入
password_field = driver.find_element_by_id(“pass”)
password_field.send_keys(“your_password”)# 定位登录按钮,并点击
login_button = driver.find_element_by_id(“loginbutton”)
login_button.click()
这段代码利用了Selenium,这是一个用于网络自动化的流行库。它打开一个网络浏览器,根据代码中给出的各种命令进行导航。在这段代码块中,浏览器将打开Facebook,并在网页上找到要修改的特定元素。这里,我们在电子邮件和密码字段中输入字符串,并点击 "登录 "按钮。如果提供了有效的凭证,就能自动登录网站。
推荐书单
《Python从入门到精通(第2版)》
《Python从入门到精通(第2版)》从初学者角度出发,通过通俗易懂的语言、丰富多彩的实例,详细介绍了使用Python进行程序开发应该掌握的各方面技术。全书共分23章,包括初识Python、Python语言基础、运算符与表达式、流程控制语句、列表和元组、字典和集合、字符串、Python中使用正则表达式、函数、面向对象程序设计、模块、异常处理及程序调试、文件及目录操作、操作数据库、GUI界面编程、Pygame游戏编程、网络爬虫开发、使用进程和线程、网络编程、Web编程、Flask框架、e起去旅行网站、AI图像识别工具等内容。所有知识都结合具体实例进行介绍,涉及的程序代码都给出了详细的注释,读者可轻松领会Python程序开发的精髓,快速提升开发技能。除此之外,该书还附配了243集高清教学微视频及PPT电子教案。
《Python从入门到精通(第2版)》【摘要 书评 试读】- 京东图书京东JD.COM图书频道为您提供《Python从入门到精通(第2版)》在线选购,本书作者:明日科技,出版社:清华大学出版社。买图书,到京东。网购图书,享受最低优惠折扣!https://item.jd.com/13284890.html
精彩回顾
ChatGPT教你如何用Python和Matplotlib绘图(上)
ChatGPT教你如何用Python和Matplotlib绘图(下)
《事半功倍,使用ChatGPT编写Python函数》
超快速,使用ChatGPT编写回归和分类算法
《如虎添翼,将ChatGPT和Python结合起来!》
《ChatGPT优化Python代码的小技巧》
《使用ChatGPT提升Python编程效率》
微信搜索关注《Python学研大本营》
访问【IT今日热榜】,发现每日技术热点