这九个提高效率的Python工具,太赞了

开发 后端
最近汇总了平时常用到的9个很好的Python工具,它们能极大的提高我们的工作效率,安装它们,然后逐步熟练使用它们。若有用,可以收藏这篇文章。

[[441020]]

 1 Faker生成假数据

你若还在为生成名字、地址、IP地址而发愁,试试Faker库吧。

它是专业生成假数据的神器,但生成的数据看起来又如此“不假”。

基本用法如下所示:

 

  1. from faker import Faker 
  2. fake = Faker(locale="zh_CN"
  3.      
  4. fake.name() 
  5. '谭柳' 
  6.      
  7. fake.address() 
  8. '江西省关岭县新城赵街Y座 630814' 
  9.       
  10. fake.text() 
  11. '怎么作者地区.投资报告企业内容责任发展来源资料.一下自己一次全部社区.\n今天非常由于开发谢谢.其中大家组织游戏.\n只有最新控制同时计划学校.分析记者价格方式.\n成功可能感觉方式包括手机.中国重要这种比较必须中心我的.\n公司很多安全类别威望一种.标题部门全国文件日本帖子积分不同.\n工程这个其中销售历史可以.对于感觉全国发生国内不是.单位用户新闻成为.留言本站说明报告工作继续.' 

 

2 Pendulum管理时间

使用日期和时间格式从来都不是一件有趣的事情。

尽管内置的datetime模块做得相当不错,但有一个更直观的Pendulum,能做到快速处理。

它支持时区转换、日期、时间操作和格式设置。

如下是一个快速示例,快速创建1个上海时区的时间:

 

  1. from datetime import datetime 
  2. import pendulum 
  3.      
  4. sh = pendulum.timezone('Asia/Shanghai'
  5. shc = pendulum.now() 
  6. print('Current Date Time in sh =', shc) 
  7. # DateTime(2021, 12, 9, 16, 38, 52, 599942, tzinfo=Timezone('Asia/Shanghai')) 
  8.  
  9. shc.add(years=1) 
  10. # DateTime(2022, 12, 9, 16, 38, 52, 599942, tzinfo=Timezone('Asia/Shanghai')) 

 

3 Scrapy 做爬虫

Scrapy是一个强大的工具,可以让你从网站上快速提取信息。

当需要从多个网站或网页中提取大量信息时,手动提取是低效的。

Scrapy提供了易于使用的方法和包,可以使用HTML标记或CSS类提取信息。通过以下命令安装scrapy:

 

  1. pip install scrapy 

然后直接在终端输入下面一行代码,

 

  1. scrapy fetch --nolog https://baidu.com 

就能得到百度的首页html内容。

4 使用Pandas数据分析

Pandas是一个简单但功能强大的数据分析工具。使用它可以进行数据清洗,并对其进行统计分析。

分析完数据后,还可以使用外部库(如[Matplotlib])将其可视化(

https://github.com/matplotlib/matplotlib).

Pandas最棒的地方是它建在NumPy上面,NumPy是一个强大的数据分析工具,因为Pandas基于它,所以这意味着大多数NumPy方法都是Pandas中已有的函数。

5 click命令行工具

click是一个Python包,可用于创建命令行接口,相当漂亮的命令行,相当丝滑。

让我们看一个例子:

 

  1. ""
  2. click 模块演示 
  3. ""
  4.  
  5.  
  6. @click.command() 
  7. @click.option('--count'default=3) 
  8. @click.option('--name', prompt='输入你的名字:'
  9. def hello(countname): 
  10.     for x in range(count): 
  11.         print(f"Hello {name}!"
  12.  
  13.  
  14. if __name__ == "__main__"
  15.     hello() 

 

hello函数公开了两个参数:count和name。最后,在命令行,直接这样调用脚本:

 

  1. python click_hello.py --count=5 

最后打印:

 

  1. 输入你的名字:: zhenguo 
  2. Hello zhenguo! 
  3. Hello zhenguo! 
  4. Hello zhenguo! 
  5. Hello zhenguo! 
  6. Hello zhenguo! 

 

6 微web框架Flask

需要设置web服务器吗?

你有两秒钟的时间吗?因为这就是用Python启动简单web服务器所需的时间,直接下面一行代码:

 

  1. python -m http.server 8000 

但对于一个基本的web应用程序来说,这可能太简单了。Flask是一个用Python构建的微web框架。它是“微型”的,因为它没有任何数据库抽象层、表单验证或邮件支持。

幸运的是,它有大量的扩展,可以即插即用,如果只想提供一个简单的API,那么它就是完美的。

要使用Flask创建API服务器,请使用以下脚本:

 

  1. from flask import Flask 
  2. from flask import jsonify 
  3.  
  4. app = Flask(__name__) 
  5.  
  6.  
  7. @app.route('/'
  8. def root(): 
  9.     return jsonify( 
  10.         app_name="zhenguo的小工具"
  11.         app_user="zhenguo" 
  12.     ) 

 

使用下面一行代码启动服务:

 

  1. FLASK_APP=flask.py flask run 

最后,当您在浏览器中访问URLhttp://127.0.0.1:5000/时,

应该会看到以下JSON:

 

  1. {"app_name":"zhenguo的小工具","app_user":"zhenguo"

7 API请求Requests

Requests是一个强大的HTTP库。有了它,可以自动化任何与HTTP请求相关的操作,包括API自动化调用,这样你就不必再手动进行调用。

它附带了一些有用的特性,如授权处理、JSON/XML解析和会话处理。

如下获取明文地址:北京市海淀区清华东路35号,对应的经纬度时,使用百度地图接口,免费注册得到一个apk,返回经纬度结果如下所示:

 

  1. import requests 
  2. import re 
  3.  
  4. rep = requests.get( 
  5.     'https://api.map.baidu.com/geocoding/v3/?address=北京市海淀区清华东路35号&output=json&ak=你的apk&callback=showLocation'
  6. print(re.findall(r'"lng":(.*),"lat":(.*?)}', rep.text)) 
  7.  
  8. # 结果显示     
  9. [('116.35194130702107''40.00664192889596')] 

8 自动化测试Selenium

Selenium是一个编写自动化测试用例的测试框架。

尽管它是用Java编写的,Python包提供对几乎所有Selenium函数的类似API的访问。

Selenium通常用于自动化应用程序UI的测试,但您也可以使用它自动化机器上的任务,如打开浏览器、拖放文件等。

看一个快速示例,演示如何打开浏览器并访问百度主页:

 

  1. from selenium import webdriver  
  2. import time  
  3.        
  4. browser = webdriver.Chrome(executable_path ="C:\Program Files (x86)\Google\Chrome\chromedriver.exe")  
  5.        
  6. website_URL ="https://baidu.com/" 
  7. brower.get(website_URL)  
  8.      
  9. refreshrate = int(15)  
  10.        
  11. # 一直保持运行 
  12. while True:  
  13.     time.sleep(refreshrate)  
  14.     browser.refresh()  

 

现在,该脚本每15秒刷新浏览器中的百度主页。

9 图像处理Pillow

很多时候,需要以某种方式修改图像,使其更适合,例如模糊细节、组合一个或多个图像或创建缩略图。

将自制的Pillow脚本与Click组合在一起,然后直接从命令行访问它们,这对于加快重复的图像处理任务非常有用。

 

看一个模糊图像的快速示例:

 

 

  1. from PIL import Image, ImageFilter 
  2.      
  3. try: 
  4.     original = Image.open("python-logo.png"
  5.      
  6.     # Blur the image 
  7.     blurred = original.filter(ImageFilter.BLUR) 
  8.      
  9.     # Display both images 
  10.     original.show() 
  11.     blurred.show() 
  12.      
  13.     blurred.save("blurred.png"
  14.      
  15. except
  16.     print('未能加载图像'

 

责任编辑:华轩 来源: 今日头条
相关推荐

2014-12-12 09:52:04

JavaScript

2023-10-23 15:02:53

JavaScript

2019-06-25 08:42:13

Linux命令指令

2020-06-04 15:55:54

GitHub代码开发者

2020-01-21 19:39:31

数据中心服务器工具

2010-04-13 15:14:31

Oracle优化

2023-05-17 16:47:47

物联网智能建筑

2015-05-22 14:01:50

编程提高效率

2015-06-02 09:33:30

编程效率程序员

2015-11-27 12:59:11

Android技巧提高效率

2018-09-30 14:46:38

Linux命令技巧

2022-09-07 10:30:34

JSON工具

2021-08-02 09:29:08

Vscode开发Web

2015-09-06 16:05:57

绿色数据中心效率

2012-03-27 09:17:43

Visual Stud

2016-12-29 11:41:45

2013-11-18 10:31:03

Unix操作

2013-11-18 10:36:39

Unix命令

2022-11-30 15:22:02

DevOps软件开发运维

2017-07-24 10:06:36

Java架构师与开发者工具
点赞
收藏

51CTO技术栈公众号