最近汇总了平时常用到的常用九个很好的Python包,它们能极大的学学提高我们的工作效率,安装它们,常用然后逐步熟练使用它们。学学 你若还在为生成名字、常用地址、学学IP地址而发愁,常用试试Faker库吧。学学 它是常用专业生成假数据的神器,但生成的学学数据看起来又如此“不假”。 基本用法如下所示: from faker import Faker fake = Faker(locale="zh_CN") fake.name() # 谭柳 fake.address() # 江西省关岭县新城赵街Y座 630814 fake.text() 使用日期和时间格式从来都不是一件有趣的事情。 尽管内置的学学datetime模块做得相当不错,但有一个更直观的常用Pendulum,能做到快速处理。学学 它支持时区转换、常用日期、时间操作和格式设置。 如下是一个快速示例,快速创建1个上海时区的时间: from datetime import datetime import pendulum sh = pendulum.timezone(Asia/Shanghai) shc = pendulum.now() print(Current Date Time in sh =, shc) # DateTime(2021, 12, 9, 16, 38, 52, 599942, tzinfo=Timezone(Asia/Shanghai)) shc.add(years=1) Scrapy是网站模板一个强大的工具,可以让你从网站上快速提取信息。 当需要从多个网站或网页中提取大量信息时,手动提取是低效的。 Scrapy提供了易于使用的方法和包,可以使用HTML标记或CSS类提取信息。通过以下命令安装scrapy: 然后直接在终端输入下面一行代码: 就能得到百度的首页html内容。 Pandas是一个简单但功能强大的数据分析工具。使用它可以进行数据清洗,并对其进行统计分析。 分析完数据后,还可以使用外部库(如[Matplotlib])将其可视化(https://github.com/matplotlib/matplotlib)。 Pandas最棒的地方是它建在NumPy上面,NumPy是一个强大的数据分析工具,因为Pandas基于它,所以这意味着大多数NumPy方法都是Pandas中已有的函数。 click是一个Python包,可用于创建命令行接口,相当漂亮的源码下载命令行,相当丝滑。 让我们看一个例子: """ click 模块演示 """ @click.command() @click.option(--count, default=3) @click.option(--name, prompt=输入你的名字:) def hello(count, name): for x in range(count): print(f"Hello { name}!") if __name__ == "__main__": hello函数公开了两个参数:count和name。最后,在命令行,直接这样调用脚本: 最后打印: 输入你的名字:: zhenguo Hello zhenguo! Hello zhenguo! Hello zhenguo! Hello zhenguo! 需要设置web服务器吗? 你有两秒钟的时间吗?因为这就是用Python启动简单web服务器所需的时间,直接下面一行代码: 但对于一个基本的web应用程序来说,这可能太简单了。Flask是一个用Python构建的微web框架。它是“微型”的,因为它没有任何数据库抽象层、表单验证或邮件支持。 幸运的是,它有大量的扩展,可以即插即用,如果只想提供一个简单的API,那么它就是完美的。高防服务器 要使用Flask创建API服务器,请使用以下脚本: from flask import Flask from flask import jsonify app = Flask(__name__) @app.route(/) def root(): return jsonify( app_name="zhenguo的小工具", app_user="zhenguo" 使用下面一行代码启动服务: 最后,当您在浏览器中访问URLhttp://127.0.0.1:5000/时, 应该会看到以下JSON: Requests是一个强大的HTTP库。有了它,可以自动化任何与HTTP请求相关的操作,包括API自动化调用,这样你就不必再手动进行调用。 它附带了一些有用的特性,如授权处理、JSON/XML解析和会话处理。 如下获取明文地址:北京市海淀区清华东路35号,对应的经纬度时,使用百度地图接口,免费注册得到一个apk,返回经纬度结果如下所示: import requests import re rep = requests.get( https://api.map.baidu.com/geocoding/v3/?address=北京市海淀区清华东路35号&output=json&ak=你的apk&callback=showLocation) print(re.findall(r"lng":(.*),"lat":(.*?)}, rep.text)) # 结果显示 Selenium是一个编写自动化测试用例的测试框架。 尽管它是用Java编写的,Python包提供对几乎所有Selenium函数的类似API的访问。 Selenium通常用于自动化应用程序UI的测试,但您也可以使用它自动化机器上的任务,如打开浏览器、拖放文件等。 看一个快速示例,演示如何打开浏览器并访问百度主页: from selenium import webdriver import time browser = webdriver.Chrome(executable_path ="C:\Program Files (x86)\Google\Chrome\chromedriver.exe") website_URL ="https://baidu.com/" brower.get(website_URL) refreshrate = int(15) # 一直保持运行 while True: time.sleep(refreshrate) 现在,该脚本每15秒刷新浏览器中的百度主页。 很多时候,需要以某种方式修改图像,使其更适合,例如模糊细节、组合一个或多个图像或创建缩略图。 将自制的Pillow脚本与Click组合在一起,然后直接从命令行访问它们,这对于加快重复的图像处理任务非常有用。 看一个模糊图像的快速示例: from PIL import Image, ImageFilter try: original = Image.open("python-logo.png") # Blur the image blurred = original.filter(ImageFilter.BLUR) # Display both images original.show() blurred.show() blurred.save("blurred.png") except: