这个列表包含与网页抓取和数据处理的Python库
网络
- 通用
- 异步
- treq - 类似于requests的API(基于twisted)。
- aiohttp - asyncio的HTTP客户端/服务器(PEP-3156)。
网络爬虫框架
- 功能齐全的爬虫
- grab - 网络爬虫框架(基于pycurl/multicur)。
- scrapy - 网络爬虫框架(基于twisted),不支持Python3。
- pyspider - 一个强大的爬虫系统。
- cola - 一个分布式爬虫框架。
- 其他
- portia - 基于Scrapy的可视化爬虫。
- restkit - Python的HTTP资源工具包。它可以让你轻松地访问HTTP资源,并围绕它建立的对象。
- demiurge - 基于PyQuery的爬虫微框架。
HTML/XML解析器
文本处理
用于解析和操作简单文本的库。
特定格式文件处理
解析和处理特定文本格式的库。
- tablib - 一个把数据导出为XLS、CSV、JSON、YAML等格式的模块。
- textract - 从各种文件中提取文本,比如 Word、PowerPoint、PDF等。
- messytables - 解析混乱的表格数据的工具。
- rows - 一个常用数据接口,支持的格式很多(目前支持CSV,HTML,XLS,TXT – 将来还会提供更多!)。
- python-docx - 读取,查询和修改的Microsoft Word2007/2008的docx文件。
- xlwt / xlrd - 从Excel文件读取写入数据和格式信息。
- XlsxWriter - 一个创建Excel.xlsx文件的Python模块。
- xlwings - 一个BSD许可的库,可以很容易地在Excel中调用Python,反之亦然。
- openpyxl - 一个用于读取和写入的Excel2010 XLSX/ XLSM/ xltx/ XLTM文件的库。
- Marmir - 提取Python数据结构并将其转换为电子表格。
- pefile - 一个多平台的用于解析和处理可移植执行体(即PE)文件的模块。
- psd-tools - 将Adobe Photoshop PSD(即PE)文件读取到Python数据结构。
自然语言处理
处理人类语言问题的库。
- NLTK -编写Python程序来处理人类语言数据的最好平台。
- Pattern - Python的网络挖掘模块。他有自然语言处理工具,机器学习以及其它。
- TextBlob - 为深入自然语言处理任务提供了一致的API。是基于NLTK以及Pattern的巨人之肩上发展的。
- jieba - 中文分词工具。
- SnowNLP - 中文文本处理库。
- loso - 另一个中文分词库。
- genius - 基于条件随机域的中文分词。
- langid.py - 独立的语言识别系统。
- Korean - 一个韩文形态库。
- pymorphy2 - 俄语形态分析器(词性标注+词形变化引擎)。
- PyPLN – 用Python编写的分布式自然语言处理通道。这个项目的目标是创建一种简单的方法使用NLTK通过网络接口处理大语言库。
浏览器自动化与仿真
- selenium - 自动化真正的浏览器(Chrome浏览器,火狐浏览器,Opera浏览器,IE浏览器)。
- Ghost.py - 对PyQt的webkit的封装(需要PyQT)。
- Spynner - 对PyQt的webkit的封装(需要PyQT)。
- Splinter - 通用API浏览器模拟器(selenium web驱动,Django客户端,Zope)。
多重处理
异步
异步网络编程库
队列
- celery - 基于分布式消息传递的异步任务队列/作业队列。
- huey - 小型多线程任务队列。
- mrq - Mr. Queue – 使用redis & Gevent 的Python分布式工作任务队列。
- RQ - 基于Redis的轻量级任务队列管理器。
- simpleq - 一个简单的,可无限扩展,基于Amazon SQS的队列。
- python-gearman - Gearman的Python API。
云计算
电子邮件
电子邮件解析库
网址和网络地址操作
解析/修改网址和网络地址库。
- URL
- furl - 一个小的Python库,使得操纵URL简单化。
- purl - 一个简单的不可改变的URL以及一个干净的用于调试和操作的API。
- urllib.parse - 用于打破统一资源定位器(URL)的字符串在组件(寻址方案,网络位置,路径等)之间的隔断,为了结合组件到一个URL字符串,并将“相对URL”转化为一个绝对URL,称之为“基本URL”。
- tldextract - 从URL的注册域和子域中准确分离TLD,使用公共后缀列表。
网页内容提取
提取网页内容的库。
WebSocket
用于WebSocket的库。
DNS解析
- dnsyo - 在全球超过1500个的DNS服务器上检查你的DNS。
- pycares - c-ares的接口。c-ares是进行DNS请求和异步名称决议的C语言库。
计算机视觉
- OpenCV - 开源计算机视觉库。
- SimpleCV – 用于照相机、图像处理、特征提取、格式转换的简介,可读性强的接口(基于OpenCV)。
- mahotas – 快速计算机图像处理算法(完全使用 C++ 实现),完全基于 numpy 的数组作为它的数据类型。
代理服务器
- shadowsocks – 一个快速隧道代理,可帮你穿透防火墙(支持TCP和UDP,TFO,多用户和平滑重启,目的IP黑名单)。
- tproxy - tproxy是一个简单的TCP路由代理(第7层),基于Gevent,用Python进行配置。
其他Python工具列表
Python 爬虫的工具列表
原文:http://www.cnblogs.com/anyview/p/5111425.html