此列表包含与网络抓取和数据处理相关的 Python 库。
- 网络请求工具
- 网页抓取
- HTML/XML
- 文本处理
- 结构化格式
- 序列化
- 自然语言处理
- 浏览器自动化
- 多进程
- 作业队列
- 消息队列
- 云计算
- 电子邮件
- URL 和网络地址
- 网页内容提取
- 异步
- WebSocket
- DNS 解析
- 计算机视觉
- 代理服务器
- Whois
- 特定网页抓取
- JavaScript 引擎绑定
- 其他 Python 列表
- urllib - 网络库 (stdlib)。
- requests - 几乎是最流行的网络请求库。
- grab - 网络库(基于 pycurl)。
- pycurl - 网络库(基于 libcurl)。
- urllib3 - 具有线程安全连接池、文件发布支持、健全友好等的 Python HTTP 库。
- httplib2 - 小型、快速的 HTTP 客户端库。具有持久连接、缓存和 Google App Engine 支持。
- RoboBrowser - 一个简单的 Pythonic 库,用于在没有独立 Web 浏览器的情况下浏览 Web。
- MechanicalSoup - 用于自动与网站交互的 Python 库。
- mechanize - 有状态的程序化网页浏览。
- socket 底层网络接口 (stdlib)。
- Unirest for Python - Unirest 是一组轻量级的 HTTP 库,支持多种语言。
- hyper - Python 的 HTTP/2 客户端。
- PySocks - 更新和积极维护的 SocksiPy 版本,具有错误修复和额外功能。作为插座模块的直接替代品。
- dpkt - 快速、简单的数据包创建/解析,具有基本 TCP/IP 协议的定义。
- pyOpenSSL - 一个围绕 OpenSSL 库的 Python 包装器。
- tlslite-ng - 纯 python 中的 TLS 实现。
- scapy - 强大的基于 Python 的交互式数据包操作程序和库。
- impacket - 对网络协议数据包的低级编程访问。
- grab - 网络抓取框架(基于 pycurl/multicurl)。
- scrapy - 网络抓取框架(基于 Twisted)。
- pyspider - 一个强大的爬取系统。
- cola - 一个分布式爬虫框架。
- ruia - 基于 asyncio 的异步 Python 3.6+网页抓取微框架。
- ioweb - 基于 gevent 和 lxml 的网页抓取框架。
- autoscraper - 一个智能、自动、轻量级的网络爬虫。
- frontera - 一个可扩展的网络爬虫框架。
- Scrapegraph-ai - 一个使用 AI 进行抓取的开源库
- portia - Scrapy 的可视化抓取。
- restkit - Python 的 HTTP 资源工具包。它允许您轻松访问 HTTP 资源并围绕它构建对象。
- requests-html - Pythonic HTML Parsing for Humans。
- ScrapydWeb - Scrapyd 集群管理的全功能 Web UI,支持 Scrapy 日志分析&可视化、自动打包、定时任务、邮件通知等。
- Starbelly - Starbelly 是一个用户友好且高度可配置的网络爬虫前端。
- Gerapy - 基于 Scrapy, Scrapyd, Django、Vue.js 的分布式爬虫管理框架。
- cloudscraper - 绕过 Cloudflare 的反机器人页面的 Python 模块。
- lxml - 有效的 HTML/XML 处理库,支持 XPATH。
- cssselect - 使用带有 CSS 选择器的 DOM 树。
- pyquery - 使用类 jQuery 选择器的 DOM 树。
- BeautifulSoup - 慢速 HTML/XMl 处理库,纯 Python 编写。
- html5lib - 根据 WHATWG 规范 构建 HTML/XML 文档的 DOM。该规范用于所有现代浏览器。
- feedparser - 解析 RSS/ATOM 提要。
- MarkupSafe - 为 Python 实现 XML/HTML/XHTML 标记安全字符串。
- xmltodict - 使用 XML 感觉就像使用 JSON。
- xhtml2pdf - HTML/CSS 到 PDF 转换器。
- untangle - 将 XML 文档转换为 Python 对象以便于访问。
- hodor - 围绕 lxml 和 cssselect 的配置驱动包装器。
- chopper - 使用相应 CSS 规则从 HTML 页面中提取部分并保留正确 HTML 的工具。
- selectolax - Python 绑定到 Modest 引擎(带有 CSS 选择器的快速 HTML5 解析器)。
- parsel - 允许您使用 XPath 或 CSS 选择器从 XML/HTML 文档中提取数据。
- html5-parser - 用于 python 的基于 C 的快速 HTML5 解析。
- gazpacho - 一个简单、快速、现代的网络抓取库。
- extruct - 用于从 HTML 标记中提取嵌入元数据的库。
用于解析和操作纯文本的库。
- difflib - (Python 标准库)计算增量的助手。
- Levenshtein - 快速计算 Levenshtein 距离和字符串相似度。
- fuzzywuzzy - 模糊字符串匹配。
- esmre - 正则表达式加速器。
- ftfy - 自动减少 Unicode 文本的损坏和更一致。
- unidecode - Unicode 文本的 ASCII 音译库。
- uniout - 打印可读字符而不是转义字符串。
- chardet - Python 2/3 兼容的字符编码检测器。
- xpinyin - 一个将汉字(汉字)翻译成拼音(拼音)的库。
- pangu.py - CJK 和字母数字的间距文本。
- cchardet - cChardet 是高速通用字符编码检测器,绑定到 uchardet。
- awesome-slugify - 一个可以保存 unicode 的 Python slugify 库。
- python-slugify - 一个将 unicode 转换为 ASCII 的 Python slugify 库。
- unicode-slugify - 生成 unicode slug 的 slugifier。
- pytils - 处理俄语字符串的简单工具(包括 pytils.translit.slugify)。
- python-nameparser - 将人名解析成各自的组成部分。
- 电话号码 - 解析、格式化、存储和验证国际电话号码。
- HTTP 代理解析器 - Python HTTP 代理解析器。
- uap-python - ua-parser 的 Python 实现。
- python-user-agents - 浏览器用户代理解析器。
- fake-useragent - Python 用户代理字符串伪造者,基于浏览器的世界统计数据。
- user_agent - 用户代理数据生成器。
- reppy - 适用于 Python 的现代 robots.txt 解析器。
- dateutil - 对标准 Python 日期时间功能的有用扩展。
- dateparser - 用于人类可读日期的 python 解析器。
- ciso8601 - 将 ISO 8601 或 RFC 3339 日期时间字符串转换为 Python 日期时间对象。
- price-parser - 一个用于从原始文本字符串中提取价格和货币的小型库。
用于解析和操作特定文本格式的库。
- tablib - XLS、CSV、JSON、YAML 格式的表格数据集模块。
- texttract - 从任何文档、Word、PowerPoint、PDF 等中提取文本。
- messytables - 解析杂乱表格数据的工具。
- rows - 一个通用的、漂亮的表格数据界面,无论格式如何(目前是 CSV、HTML、XLS、TXT)。
- python-docx - 读取、查询和修改 Microsoft Word 2007/2008 docx 文件。
- xlwt / xlrd - 从 Excel 文件中写入和读取数据以及格式化信息。
- XlsxWriter - 用于创建 Excel .xlsx 文件的 Python 模块。
- xlwings - 一个 BSD 许可的库,可以轻松地从 Excel 调用 Python,反之亦然。
- openpyxl - 用于读写 Excel 2010 xlsx/xlsm/xltx/xltm 文件的库。
- Marmir - 采用 Python 数据结构并将它们转换为电子表格。
- PDFMiner - 从 PDF 文档中提取信息的工具。
- PyPDF2 - 一个能够拆分、合并和转换 PDF 页面的库。
- ReportLab - 允许快速创建丰富的 PDF 文档。
- pdftables - 直接从 PDF 文件中提取表格
- Python-Markdown - John Gruber 的 Markdown 的 Python 实现。
- Mistune - 最快且功能齐全的 Markdown 纯 Python 解析器。
- markdown2 - Markdown 的快速且完整的 Python 实现。
- mistletoe - 在纯 Python 中快速、可扩展且符合规范的 Markdown 解析器。
- PyYAML - Python 的 YAML 实现。
- cssutils - Python 的 CSS 库。
- feedparser - 通用提要解析器。
- sqlparse - 一个非验证 SQL 解析器。
- http-parser - C 中 python 的 HTTP 请求/响应解析器。
- httptools - Node.js HTTP 解析器的 Python 绑定。
- opengraph - 解析开放图协议标签的 Python 模块。
- pefile - 一个多平台模块,用于解析和使用可移植可执行文件(又名 PE)文件。
- psd-tools - 读取 Adobe Photoshop PSD 文件(如 规范 中所述/fileformatashtml/PhotoshopFileFormats.htm)) 到 Python 数据结构。
- bookmarks-parser - 解析 Firefox/Chrome HTML 书签文件。
用于处理人类语言的库。
- NLTK - 用于构建 Python 程序以处理人类语言数据的领先平台。
- spacy - 允许使用最先进的深度学习模型来完成常见的 NLP 任务。
- fastai - 带有免费视频教程 + 活跃论坛社区的深度学习库,lib 的缺点:需要 GPU。
- gensim - 用于主题建模、文档索引和大型语料库相似性检索的库。
- Pattern - Python 的网络挖掘模块。它具有用于自然语言处理、机器学习等的工具。
- TextBlob - 为深入研究常见的 NLP 任务提供一致的 API。站在 NLTK 和 Pattern 的巨大肩膀上。
- jieba - 中文分词工具。
- SnowNLP - 处理中文文本的库。
- loso - 另一个中文分词库。
- genius - 基于条件随机场的中文片段。
- langid.py - 独立的语言识别系统。
- 韩语 - 韩语 形态学库。
- pymorphy2 - 俄语的形态分析器(POS 标记器 + 转换引擎)。
- PyPLN - 用于自然语言处理的分布式管道,用 Python 制作。该项目的目标是创建一种使用 NLTK 处理大型语料库的简单方法,并带有 Web 界面。
- langdetect - Google 语言检测库到 Python 的端口。
- selenium - 自动化真实浏览器(Chrome、Firefox、Opera、IE)。
- Ghost.py - QtWebKit 的包装器(需要 PyQT)。
- Spynner - QtWebKit QtWebKit 的包装器(需要 PyQT)。
- Splinter - 浏览器模拟器的通用 API (selenium webdrivers, django client, zope)。
- Requestium - Requests 和 Selenium 之间的集成层,用于 Web 操作的自动化。
- Splash - 具有 HTTP API 的轻量级、可编写脚本的浏览器即服务。
- pyppeteer - 无头 chrome/chromium 自动化库(puppeteer 的非官方端口)。
- Playwright - Playwright 是一个 Python 库,可通过单个 API 自动化 Chromium、Firefox 和 WebKit 浏览器。
- seleniumbase - 用于 Web/UI 测试 + RPA 的 Python 框架。 🤖 🏰 快速、简单、可靠。
- xvfbwrapper - 用于在 X 虚拟帧缓冲区 (Xvfb) 中运行显示的 Python 包装器。
- 线程 - 运行线程的标准 python 库。对 I/O 密集型任务有效。由于 python GIL,对 CPU 密集型任务无用。
- multiprocessing - 运行进程的标准 Python 库。
- concurrent-futures - concurrent.futures 模块为异步执行可调用对象提供高级接口。
用于异步网络编程的库。
- asyncio - (Python 3.4+ 中的 Python 标准库)异步 I/O、事件循环、协程和任务。
- Twisted - 一个事件驱动的网络引擎。
- Tornado - 一个 Web 框架和异步网络库。
- pulsar - Python 的事件驱动并发框架。
- diesel - 基于 Greenlet 的 Python 事件 I/O 框架。
- gevent - 一个使用 greenlet 的基于协程的 Python 网络库。
- eventlet - 支持 WSGI 的异步框架。
- 明天 - 异步代码的魔术装饰器语法。
- grequests - 轻松制作异步 HTTP 请求。
- 芹菜 - 基于分布式消息传递的异步任务队列/作业队列。
- huey - 小的多线程任务队列。
- mrq - Mr. Queue - Python 中使用 Redis 和 gevent 的分布式工作任务队列。
- RQ - 基于 redis 的轻量级任务队列管理器
- simpleq - 一个简单、无限可扩展、基于 Amazon SQS 的队列。
- python-gearman - Gearman 的 python API。
- kombu - Python 的消息传递库。
- picloud - 在云端执行 python 代码。
- dominoup.com - 在云端执行 R、Python 和 matlab 代码。
- minigun-requests - Web 抓取 API 将大量 GET 和 xpath 外包给云计算。
- pythonista-chromeless - 在 selenium 上执行给定 python 代码的 AWS lambda。
用于解析电子邮件的库。
用于解析/修改 URL、网络地址、域名的库。
- furl - 一个小型 Python 库,使操作 URL 变得简单。
- purl - 一个简单的、不可变的 URL 类,具有用于询问和操作的干净 API。
- urllib.parse - 在组件(寻址方案、网络位置、路径等)中分解统一资源定位器(URL)字符串的接口),将组件组合回 URL 字符串,并在给定“基本 URL”的情况下将“相对 URL”转换为“绝对 URL”(标准库)。
- tldextract - 使用公共后缀列表准确地将 TLD 与 URL 的注册域和子域分开。
- find_domains - 在文本数据中搜索域名的库。
用于提取 Web 内容的库。
- newspaper - Python 中的新闻提取、文章提取和内容管理。
- python-goose - HTML 内容/文章提取器。
- scrapely - 用于从 HTML 页面中提取结构化数据的库。给定一些示例网页和要提取的数据,为所有相似页面构建解析器。
- htmldate - 使用常见的结构模式或基于文本的启发式查找创建日期。
- lassie - 人类的 Web 内容检索。
- html2text - 将 HTML 转换为 Markdown 格式的文本。
- libextract - 从网站中提取数据。
- python-readability - arc90 可读性工具的快速 Python 端口。
- sumy - 用于自动汇总文本文档和 HTML 页面的模块。
- Haul - 可扩展的图像爬虫。
- you-get - 一个用 Python 3 编写的 YouTube/Youku/Niconico 视频下载器。
- youtube-dl - 从 YouTube 下载视频的小型命令行程序。
- WikiTeam - 下载和保存 wiki 的工具。
- linkchecker - 检查网络文档或完整网站中的链接。
- python-sitemap - 从网站制作站点地图的迷你网站爬虫。
- trafilatura - 快速提取正文和评论以及结构,转换为 TXT、CSV 和 XML。
- advertools - 一个可定制的爬虫,用于分析 SEO 以及页面和网站的内容。
- photon - 为 OSINT 设计的令人难以置信的快速爬虫。
- extractnet - Python 3 中基于机器学习的内容和元数据提取。
用于使用 WebSocket 的库。
- Crossbar - 开源统一的应用程序路由器(用于高速公路上的 Python 的 Websocket 和 WAMP)。
- AutobahnPython - Twisted 和 asyncio 上用于 Python 的 WebSocket 和 WAMP。
- WebSocket-for-Python - Python 2 和 3 以及 PyPy 的 WebSocket 客户端和服务器库。
- dnspython - 一个强大的 python DNS 工具包。
- dnsyo - 对照 1500 多个全球 DNS 服务器检查您的 DNS。
- pycares - 与 c-ares 的接口。 c-ares 是一个异步执行 DNS 请求和名称解析的 C 库。
- OpenCV - 开源计算机视觉库。
- SimpleCV - 简洁、易读的相机接口、图像处理、特征提取和格式转换(基于 OpenCV)。
- mahotas - 在 numpy 数组上运行的快速计算机视觉算法(全部用 C++ 实现)。
- scylla - 人类智能代理池。
- ProxyBroker - 代理 [Finder |检查器 |服务器]。
- shadowsocks - 帮助您绕过防火墙的快速隧道代理(TCP 和 UDP 支持、用户管理 API、TCP 快速打开、Worker 和优雅重启、目标 IP 黑名单)。
- tproxy - tproxy 是一个基于 Gevent 的简单 TCP 路由代理(第 7 层),可让您在 Python 中配置例程逻辑。
- python-whois - 用于检索和解析 WHOIS 数据的 python 模块。
- twitter-scraper - 无需身份验证即可抓取 Twitter 前端 API。
- Ultimate-Facebook-Scraper - 一个爬取几乎所有关于 Facebook 用户个人资料的机器人。
- instagram-scraper - 抓取 Instagram 用户的照片和视频。