Python 网络爬虫的常用库汇总
爬虫的编程语言有不少,但 Python 绝对是其中的主流之一。下面就为大家介绍下 Python 在编写网络爬虫常常用到的一些库。
请求库:实现 HTTP 请求操作
- **urllib:**一系列用于操作URL的功能。
- **requests:**基于 urllib 编写的,阻塞式 HTTP 请求库,发出一个请求,一直等待服务器响应后,程序才能进行下一步处理。
- **selenium:**自动化测试工具。一个调用浏览器的 driver,通过这个库你可以直接调用浏览器完成某些操作,比如输入验证码。
- **aiohttp:**基于 asyncio 实现的 HTTP 框架。异步操作借助于 async/await 关键字,使用异步库进行数据抓取,可以大大提高效率。
解析库:从网页中提取信息
- **beautifulsoup:**html 和 XML 的解析,从网页中提取信息,同时拥有强大的API和多样解析方式。
- **pyquery:**jQuery 的 Python 实现,能够以 jQuery 的语法来操作解析 HTML 文档,易用性和解析速度都很好。
- **lxml:**支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高。
- **tesserocr:**一个 OCR 库,在遇到验证码(图形验证码为主)的时候,可直接用 OCR 进行识别。
存储库:Python 与数据库交互
- **pymysql:**一个纯 Python 实现的 MySQL 客户端操作库。
- **pymongo:**一个用于直接连接 mongodb 数据库进行查询操作的库。
- **redisdump:**一个用于 redis 数据导入/导出的工具。基于 ruby 实现的,因此使用它,需要先安装 Ruby。
爬虫框架
- **Scrapy:**很强大的爬虫框架,可以满足简单的页面爬取(比如可以明确获知url pattern的情况)。用这个框架可以轻松爬下来如亚马逊商品信息之类的数据。但是对于稍微复杂一点的页面,如 weibo 的页面信息,这个框架就满足不了需求了。
- **Crawley:**高速爬取对应网站的内容,支持关系和非关系数据库,数据可以导出为 JSON、XML 等。
- **Portia:**可视化爬取网页内容。
- **newspaper:**提取新闻、文章以及内容分析。
- **python-goose:**java 写的文章提取工具。
- **cola:**一个分布式爬虫框架。项目整体设计有点糟,模块间耦合度较高。
Web 框架库
- **flask:**轻量级的 web 服务程序,简单,易用,灵活,主要来做一些 API 服务。做代理时可能会用到。
- **django:**一个 web 服务器框架,提供了一个完整的后台管理,引擎、接口等,使用它可做一个完整网站。
相关推荐:
- 80个Python练手项目列表
- 使用 Python 批量爬取网站信息
- 这么多人推崇Python,如果他们学了找不到工作怎么办?
- 常见数据结构的 Python 实现(建议收藏)
- 快速入门 Python 数据分析实用指南
- [新手必备]Python 基础入门必学知识点笔记
Python 网络爬虫的常用库汇总相关推荐
- python网络爬虫的第三方库_Python常用第三方库_网络爬虫、数据分析与WEB开发、机器学习...
Python语言有超过12万个第三方库,覆盖信息技术几乎所有领域.下面简单介绍下网络爬虫.自动化.数据分析与可视化.WEB开发.机器学习和其他常用的一些第三方库,如果有你感兴趣的库,不妨去试试它的功能 ...
- Python的各大常用库汇总
Python常用库 Chardet字符编码探测器,可以自动检测文本.网页.xml的编码. colorama主要用来给文本添加各种颜色,并且非常简单易用. Prettytable主要用于在终端或浏览器端 ...
- python urllib.request 爬虫 数据处理-Python网络爬虫(基于urllib库的get请求页面)
一.urllib库 urllib是Python自带的一个用于爬虫的库,其主要作用就是可以通过代码模拟浏览器发送请求.其常被用到的子模块在Python3中的为urllib.request和urllib. ...
- Python网络爬虫之requests库Scrapy爬虫比较
requests库Scrapy爬虫比较 相同点: 都可以进行页面请求和爬取,Python爬虫的两个重要技术路线 两者可用性都好,文档丰富,入门简单. 两者都没有处理JS,提交表单,应对验证码等功能(可 ...
- python网络爬虫的第三方库_以下选项中,Python网络爬虫方向的第三方库是A.()scrapy()B.()numpy()C.()openpyxl()D.()PyQt5...
[填空题] 水泥浆体由初凝到终凝的过程称为水泥的(). [单选] 肝脏是人体最大的实质性器官,其重量约() [填空题] 由箭线.节点和线路组成的,用来表示工作流程的有序.有向的网络叫做(). [判断题 ...
- Python:网络爬虫爬取某表情包网站
Python:网络爬虫爬取某表情包网站 参考: 爬虫基础知识点汇总(html文件基础和4个常用库 超级详细长文预警) [爬虫教程]吐血整理,最详细的爬虫入门教程~ HTML的简单介绍 HTML的全称为 ...
- python网络爬虫系列教程——python中pyquery库应用全解
全栈工程师开发手册 (作者:栾鹏) python教程全解 python网络爬虫lxml库的应用全解. 在线安装方法:cmd中输入"pip install pyquery" 离线安装 ...
- python网络爬虫系列教程——python中requests库应用全解
全栈工程师开发手册 (作者:栾鹏) python教程全解 python中requests库的基础应用,网页数据挖掘的常用库之一.也就是说最主要的功能是从网页抓取数据. 使用前需要先联网安装reques ...
- Python网络爬虫全网资源汇总
网络爬虫是什么? 百度百科 书籍 <Python网络爬虫权威指南 第2版> <Python网络爬虫框架Scrapy从入门到精通> <精通Python网络爬虫核心技术.框架 ...
最新文章
- LeetCode Generate Parentheses
- JSPServlet学习手册
- java一个接口执行结束释放内存_java的灵魂--JVM虚拟机
- 《研磨设计模式》chap22 装饰模式Decorator(2)应用到场景
- SAP错误问题汇总(转)
- MIT的周博磊博士如何解释深度学习模型(附PPT)
- 从零开始学前端:HTML的一些文本格式化标签、快捷键、和特殊符号 --- 今天你学习了吗?(CSS:Day02)
- WinForm如何控制ShowDialog()的返回值,并且可以判断是否会弹出主窗体
- 中文分词:正向最大匹配与逆向最大匹配
- 面试准备——springboot相关
- Linux安装后的基本配置
- 人工智能、区块链、算法...这30个大数据热词你知道吗?
- 【Makefile】简单的Makefile编写
- Google Daydream实验室:VR设计的三大要素
- 绘图板应用讲解计算机,计算机绘图应用教程——caxa电子图板xp.pptx
- CameraBag Photo 2020 for Mac(Mac滤镜软件)
- [c++]平均成绩、从尾到头打印链表、整数从大到小排序、二分法查找、斐波那契数列
- 华为手机进入汽车自动打开热点
- 小微企业如何通过地推实现精准获客?
- C语言简介及进制换算