github5款优质的Python小工具(最后一款真神器)
有过代码经历的人,GitHub或多或少的都使用过。GitHub是一个面向开源项目的托管平台,因为只支持 Git 作为唯一的版本库格式进行托管,故名 GitHub。目前,其注册用户已经超过350万,托管版本数量也是非常之多,其中不乏知名开源项目Ruby on Rails、jQuery、python等。
今天小编为大家推荐GitHub上5个优质的Python项目,它们分别是:
- bamboolib
- faker
- dabl
- ProxyPool
- helium
话不多说,下面分别来介绍一下上述5个GitHub项目。
bamboolib
bamboolib是使得DataFrames数据分析变得更加容易的一款Python库。做数据相关工作的同学,对pandas肯定不会陌生。它很强大,甚至对于很多Python开发者具备着不可替代的位置,但是对于初学者却有时候让人难以理解。
bamboolib使得pandas DataFrames数据分析变得更加简单容易,在以往需要上百行完成的工作,在bamboolib中只需要简短的一行即可。
通过bamboolib的使用,它可以提升你的工作效率,减少在无价值的事情上浪费过多精力。
安装
下面分别是本地、jupyter notebook、jupyterLab中安装的方法
pip install bamboolib
# Jupyter Notebook extensions
python -m bamboolib install_nbextensions
# JupyterLab extensions
python -m bamboolib install_labextensions
faker
faker是一款用于生成伪造数据的Python小工具。造数据,在开发过程中至关重要,尤其是在企业项目中,很多数据会涉及到敏感信息,很难获取到客户数据。这时候,如果要进行功能的开发和测试,就需要自己想办法造数据。
造数据是一件非常令人头疼的事情,如果让你造一条地址信息,可能会脱口而出。那如果让造10000条数据呢?这就是一个即耗脑力,又耗体力的活。
faker就可以一行代码实现数据的生成。它可以根据不同的参数生成不同语言、不同类型的数据。
安装
可以直接使用pip命令进行安装
pip install Faker
生成数据
from faker import Faker
fake = Faker(['it_IT', 'en_US', 'ja_JP'])
for _ in range(10):
print(fake.name())
dabl
dabl是一款数据分析基准库。这个项目试图使监督机器学习对于初学者变的更容易,并减少见任务的复杂度。例如,利用dabl进行分类的一个示例
import dabl
from sklearn.model_selection import train_test_split
from sklearn.datasets import load_digits
X, y = load_digits(return_X_y=True)
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=1)
sc = dabl.SimpleClassifier().fit(X_train, y_train)
Running ...
print("Accuracy score", sc.score(X_test, y_test))
Accuracy score 0.9...
就这样简单的几行代码,几秒钟的时间内既可以获得分类结果。
其实,dabl的最大优点并不在于机器学习,而是在于为数据探索提供了简单的接口。下面是一个简单地通过调用plot(X, y)生成的可视化示例:
ProxyPool
ProxyPool是一款高效的代理池工具。我们在很多工作场景下会用到代理,例如,一个比较典型的场景:爬虫。通过这些代理,我们可以解决针对不同网站的请求问题,但是,有些代理是收费的,有些是免费的,当需要到用到免费代理时却无从下手。
ProxyPool提供了免费高效的代理池,它具有如下特点:
- 定时抓取免费代理网站,简易可扩展。
- 使用 Redis 对代理进行存储并对代理可用性进行排序。
- 定时测试和筛选,剔除不可用代理,留下可用代理。
- 提供代理 API,随机取用测试通过的可用代理。
安装依赖包
使用ProxyPool之前首先需要安装依赖包
pip3 install -r requirements.txt
运行代理池
ProxyPool提供Tester、Getter、Server三种方法,可以单独运行,也可以全部运行。全部运行,命令如下
python3 run.py
单独运行,命令如下
python3 run.py --processor getter
python3 run.py --processor tester
python3 run.py --processor server
helium
终于到了本文要重点介绍这款神器:helium。
helium是一款基于 Selenium实现的网页自动化工具,它能够解放你的双手,让你实现日常各种网页的使用。
废话不多说,来先看一个示例,应该就明白它到底是干什么用的。
from helium import *
start_chrome('google.com')
write('helium selenium github')
press(ENTER)
click('mherrmann/helium')
go_to('github.com/login')
write('username', into='Username')
write('password', into='Password')
click('Sign in')
kill_browser()
看一下具体的演示
启动浏览器、与浏览器交互、查找相关元素、等待元素出现…,其中,较为常用的就是启动浏览器和浏览器交互。
helium能够输入内容、敲击键盘、点击按钮、跳转、关闭等各种我们日常访问网页时常用的操作。也许看到这里很多同学还是认为,这有什么用啊?
举个例子,假如日常的工作就是在网站填写表格或者处理订单等重复性的工作,那么就可以写一个脚本,然后循环同样一个动作,自己就不用动手操作了。
我觉得这个还可以发散一下思维,例如:
- 批量下载音乐
- 批量下载电影、电视剧
- 下载图片
- 快速填单
- 便捷访问日常网址
更多精彩内容,关注微信公众号『Python学习与数据挖掘』
为方便技术交流,本号开通了技术交流群,有问题请添加小助手微信号:connect_we,备注:CSDN,欢迎转载,收藏,码字不易,喜欢文章就点赞一下!谢啦
本文地址:https://blog.csdn.net/weixin_38037405/article/details/107075230
下一篇: 她是宋徽宗的韦皇后,被俘后*给金人生孩子