快收藏!史上最全156个Python网络爬虫资源
Posted 程序员-吴彦祖
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了快收藏!史上最全156个Python网络爬虫资源相关的知识,希望对你有一定的参考价值。
本列表包含Python网页抓取和数据处理相关的库。
网络相关
通用
-
urllib - 网络库(标准库)
-
requests - 网络库
-
grab - 网络库(基于pycurl)
-
pycurl - 网络库 (与libcurl绑定)
-
urllib3 - 具有线程安全连接池、文件psot支持、高可用的Python HTTP库
-
httplib2 - 网络库
-
RoboBrowser - 一个无需独立浏览器即可访问网页的简单、pythonic的库
-
MechanicalSoup - 能完成自动网站交互的Python库
-
mechanize - 有状态、可编程的网页浏览库。
-
socket - 底层网络接口(标准库)
-
Unirest for Python - 一套支持多种语言的轻量级HTTP库
-
hyper - Python HTTP/2客户端
-
PySocks - SocksiPy持续更新并维护的版本,指出bug修复和一些其他功能,可以作为socket模块的替代品
异步
-
treq - 基于twisted、与requests类似的API
-
aiohttp - asyncio的HTTP客户端/服务器 (PEP-3156)
网络爬虫框架
全能型爬虫
-
grab - 网络爬虫框架(基于pycurl/multicurl)
-
scrapy -网络爬虫框架(基于twisted)
-
pyspider - 一个强力的爬虫系统
-
cola - 一个分布式爬虫框架
其他
-
portia - 基于Scrapy的可视化爬虫
-
restkit - Python的HTTP资源库。允许影虎简单的访问HTTP资源并用来创建项目
-
demiurge - 基于PyQuery的微型爬虫框架
HTML/XML****解析
通用
-
lxml - 高效的html/XML处理库。支持XPATH,用C语言写成
-
cssselect - 解析DOM树和css选择器
-
pyquery - 解析DOM树和jQuery选择器
-
BeautifulSoup - Python写成的低效HTML/XMl处理库
-
html5lib - 根据WHATWG规范生成HTML/ XML文档的DOM。WHATWG规范是现在浏览器的通行规范
-
feedparser - 解析RSS/ATOM信息流
-
MarkupSafe - Python的XML/HTML/XHTML安全转义字符串工具
-
xmltodict - 让你处理XML如同处理JSON一样
-
xhtml2pdf - HTML/CSS to PDF转化器
-
untangle - 讲XML文档转化为Python项目以简化处理难度
-
hodor - 支持lxml and cssselect的配置驱动包装工具
清理
-
Bleach - 清理HTML (需求html5lib)
-
sanitize - 将混乱的数据世界恢复清楚
文本处理
解析及操作文本的库
通用
-
difflib - 差异化计算工具(Python标准库)
-
Levenshtein - 快速计算编辑距离及字符串相似度
-
fuzzywuzzy - 模糊字符串比匹配
-
esmre - 正则表达式加速器.
-
ftfy - 将Unicode文本自动整理减少碎片化
转换
- unidecode - Unicode转化为ASCII文本
字符编码
-
uniout - 将转移字符串输出为可读形式
-
chardet - Python 2/3兼容字符编码检测器
-
xpinyin - 讲汉字转为拼音的库
-
pangu.py - CJK及字母数字文本间距格式化
Slug化
-
awesome-slugify - 可保留Unicode的Python slugify库
-
python-slugify - 讲Unicode转为ASCII的Python slugify库
-
unicode-slugify - unicode slugs生成工具
-
pytils - 处理俄语字符串的小工具(包含pytils.translit.slugify)
通用解析器
-
PLY - Python lex和yacc解析工具
-
pyparsing - 用于生成解析器的通用框架
人名
- python-nameparser - 姓名解析组件
电话号码
- phonenumbers - 处理、格式化、存储、验证全球电话号码
用户代理字符串
-
python-user-agents - 浏览器用户代理解析器
-
HTTP Agent Parser - Python HTTP代理解析器
-
fake-useragent - 基于全球浏览器统计的Python用户代理欺骗器
-
user_agent - 用户代理数据生成器
特殊格式处理
处理特编辑特殊字符格式的库
通用
-
tablib - 处理XLS, CSV, JSON, YAML等表格数据的库
-
textract - 从任何文档中提取文本,支持Word,PowerPoint, PDF等
-
messytables - 杂乱的表格数据解析
-
rows - 支持多种格式的通用且美观的表格数据处理器(现有CSV, HTML, XLS, TXT – 即将支持更多)
Office
-
python-docx - 阅读,查询和修改Microsoft Word 2007/2008 docx文件
-
xlwt / xlrd - 从Excel读取及写入数据和格式化信息
-
XlsxWriter - 用于穿件Excel .xlsx文件的Python模块
-
xlwings- 一个BSD许可的库,是Excel与Python互相调用更加简单
-
openpyxl - 可读取、编辑Excel 2010xlsx/xlsm/xltx/xltm文件的库
-
Marmir - 提取Python数据结构并将其转化为表格的库
-
PDFMiner - 从PDF文档中提取信息的工具
-
PyPDF2 - 一个分割、合并、转换PDF文件的库
-
ReportLab - 可以快速创建大量PDF文档
-
pdftables - 从PDF文件中精准提取表格
Markdown
-
Python-Markdown - 一个用Python实现的John Gruber的Markdown
-
Mistune - 速度最快,功能全面的Markdown纯Python解析器
-
markdown2 - 一个完全用Python实现的快速的Markdown
YAML
- PyYAML -一个Python的YAML解析器
CSS
- cssutils - 一个Python的CSS库
ATOM/RSS
- feedparser - 通用的feed解析器
SQL
- sqlparse - 一个无验证的SQL语句分析器
HTTP
- http-parser - C语言实现的HTTP请求/响应消息解析器
Microformats
- opengraph - 一个用来解析Open Graph协议标签的Python模块
可移植的执行体
- pefile - 一个多平台的用于解析和处理可移植执行体(即PE)文件的模块
PSD
- psd-tools - 将Adobe Photoshop PSD(即PE)文件读取到Python数据结构
自然语言处理
自然语言处理库
-
NLTK -Python自然语言处理领先者
-
Pattern - Python的网络挖掘模块。他有自然语言处理工具,机器学习以及其它
-
TextBlob - 为深入处理自然语言的项目提供API,参考了NLTK及其他
-
jieba - 中文分词
-
SnowNLP - 汉字文本处理库
-
loso - 中文分词库
-
genius -基于条件随机域的中文分词
-
langid.py - 独立的语言识别系统
-
Korean - 韩文形态库
-
pymorphy2 - 俄语形态分析器(词性标注+词形变化引擎)
-
PyPLN - 用Python编写的分布式自然语言处理通道。这个项目的目标是创建一种简单的方法使用NLTK通过网络接口处理大语言库
-
langdetect - Python的谷歌语言检测库端口
浏览器自动化与仿真
浏览器
-
selenium - 自动化真实浏览器(Chrome, Firefox, Opera, IE)
-
Ghost.py - QtWebKit封装(需求PyQT)
-
Spynner - 具备AJAX支持的程序化网页浏览模块
-
Splinter - 通用API浏览器模拟器(selenium web驱动,Django客户端,Zope)
Headless工具
- xvfbwrapper - 用于在X虚拟帧缓冲区(Xvfb)中运行显示的Python包装器
多进程并发
-
threading - Python标准库的多线程运行。因为python GIL限制,对于I/O密集型任务很有效,对于CPU绑定的任务没用
-
multiprocessing - 多进程标准库
-
celery - 基于分布式消息传递的异步任务队列/作业队列
-
concurrent-futures - concurrent.futures模块提供用于异步执行callable的高级接口
异步
异步网络编程库
-
asyncio - 异步I/O,时间循环,协同程序和任务(Python 3.4以上版本的Python标准库)
-
Twisted - 基于事件驱动的网络引擎框架
-
Tornado - 一个Web框架及异步网络库
-
pulsar - Python事件驱动的并发框架
-
diesel - Python的基于Greenlet的I/O框架
-
gevent -一个基于协同程序的Python网络库,使用greenlet
-
eventlet- 有WSGI支持的异步框架
-
Tomorrow - 异步代码的魔法
队列
-
celery - 基于分布式消息传递的异步任务队列/作业队列
-
huey - 小型多线程任务队列
-
mrq - Mr. Queue - 使用redis &Gevent 的Python分布式工作任务队列
-
RQ - 基于Redis的轻量级任务队列管理器
-
simpleq - 一个简单的,可无限扩展,基于Amazon SQS的队列
-
python-gearman - Gearman的Python API
云计算
-
picloud- 在云端执行Python
-
dominoup.com- 在云端执行R, Python及matlab代码
电子邮件
电子邮件处理库
-
flanker - 电子邮件及MIME处理库
-
Talon - Mailgun库用于提取消息的报价和签名
URL****和网络地址操作
URL__和网络地址操作库
URL
-
furl - 一个小的Python库,使得操纵URL简单化
-
purl - 一个简单的不可改变的URL以及一个干净的用于调试和操作的API
-
urllib.parse - 用于打破统一资源定位器(URL)的字符串在组件(寻址方案,网络位置,路径等)之间的隔断,为了结合组件到一个URL字符串,并将“相对URL”转化为一个绝对URL,称之为“基本URL”(标准库)
-
tldextract - 使用公共后缀列表从URL的注册域和子域中准确分离TLD
网络地址
- netaddr - 用于显示和操纵网络地址的Python库
网页内容提取
网页内容提取库
HTML页面的文本和元数据
-
newspaper - 用Python进行新闻提取、文章提取和内容策展
-
html2text - 将HTML转为Markdown格式文本
-
python-goose - HTML内容/文章提取器
-
lassie - 人性化的网页内容检索工具
-
micawber - 一个从网址中提取丰富内容的小型库
-
sumy -一个自动汇总文本文件和HTML网页的模块
-
Haul - 一个可扩展的图像爬虫
-
python-readability - arc90 readability工具的快速Python接口
-
scrapely - 从HTML网页中提取结构化数据的库。给出了一些Web页面和数据提取的示例,scrapely为所有类似的网页构建一个分析器
-
libextract - 从网站提取数据
视频
-
youtube-dl - 一个从YouTube下载视频的小型命令行工具
-
you-get - Python3写成的YouTube/Youku/Niconico视频下载工具
Wiki
- WikiTeam - 下载并保存wkiks的工具
WebSocket
用于__WebSocket__的库
-
Crossbar - 开源的应用消息传递路由器(Python实现的用于Autobahn的WebSocket和WAMP)
-
AutobahnPython - 提供了WebSocket协议和WAMP协议的Python实现并且开源
-
WebSocket-for-Python - Python 2和3以及PyPy的WebSocket客户端和服务器库
DNS****解析
-
dnsyo - 在全球超过1500个的DNS服务器上检查你的DNS
-
pycares - ic-ares的接口。c-ares是进行DNS请求和异步名称决议的C语言库
计算机视觉
-
OpenCV - 开源计算机视觉库
-
SimpleCV - 用于照相机、图像处理、特征提取、格式转换的简介,可读性强的接口(基于OpenCV)
-
mahotas - 快速计算机图像处理算法(完全使用 C++ 实现),完全基于 numpy 的数组作为它的数据类型
代理服务器
-
shadowsocks - 一个快速隧道代理,可帮你穿透防火墙(支持TCP和UDP,TFO,多用户和平滑重启,目的IP黑名单)
-
tproxy - tproxy是一个简单的TCP路由代理(第7层),基于Gevent,用Python进行配置
杂项
- user_agent - 此模块用于生成随机,有效的Web导航器的配置和用户代理HTTP header
其他
-
awesome-python
-
pycrumbs
-
python-github-projects
-
python_reference
-
pythonidae
想要追赶Python的热潮,却无门路?
门槛低、薪资高、发展好… Python+大数据开发作为2022年最有“钱途”的岗位之一 ,是很多应届生和转行小伙伴们的首选。
学习 Python门槛很低,但它的晋级路线很多,通过它你能进入机器学习、数据挖掘、大数据,CS等更加高级的领域。
Python可以做网络应用,可以做科学计算,数据分析,可以做网络爬虫,可以做机器学习、自然语言处理、可以写游戏、可以做桌面应用…
这里给大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
① Python所有方向的学习路线图
,清楚各个方向要学什么东西
② 100多节Python课程视频
,涵盖必备基础、爬虫和数据分析
③ 100多个Python实战案例
,学习不再是只会理论
④ 华为出品独家Python漫画教程
,手机也能学习
⑤ 历年互联网企业Python面试真题
,复习时非常方便
上述这份完整版的Python全套学习资料已经上传CSDN官方,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
】
一、Python所有方向的学习路线
Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
二、学习软件
工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。
三、全套PDF电子书
书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。
四、入门学习视频
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。
四、实战案例
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
五、清华编程大佬出品《漫画看学Python》
用通俗易懂的漫画,来教你学习Python,让你更容易记住,并且不会枯燥乏味。
六、面试资料
我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
这份完整版的Python全套学习资料已经上传至CSDN官方,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费获取【保证100%免费
】。
以上是关于快收藏!史上最全156个Python网络爬虫资源的主要内容,如果未能解决你的问题,请参考以下文章
7套干货,Python常用技术学习知识图谱!!(史上最全,建议收藏)
7套干货,Python常用技术学习知识图谱!!(史上最全,建议收藏)
推荐系统/搜索-史上最全资源文章总结-没有你搜不到只有你想不到