python爬虫要用到的库总结


Posted in Python onJuly 28, 2020

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 服务器框架,提供了一个完整的后台管理,引擎、接口等,使用它可做一个完整网站。

观点扩展:

学习爬虫,最初的操作便是模拟浏览器向服务器发出请求,那么我们需要从哪个地方开始做起呢?请求需要我们自己来构造吗?需要关心请求这个数据结构的实现嘛?需要了解HTTP、TCP、IP层的网络传输通信吗?需要直到服务器的响应和应答原理吗?

可能你对这些根本不了解,也没办法下手。但是没关系,python为我们提供了功能齐全的类库来帮助我们完成这些请求。最基础的HTTP库有urllib、requests、treq等。

以urllib为例,有了它,我们只需要关心请求的连接是什么。需要传的参数是什么,以及如何设置可选的请求头就好了,不用深入到底层去了解它到底是怎样传输和通信的。有了它,两行代码就可以完成一个请求和相应的处理过程,得到网页内容,是不是感觉方便极了?

以上就是python爬虫要用到的库总结的详细内容,更多关于python爬虫要用到哪些库的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python爬虫常用的模块分析
Aug 29 Python
Python批量查询域名是否被注册过
Jun 21 Python
python实现媒体播放器功能
Feb 11 Python
python sys.argv[]用法实例详解
May 25 Python
Python将多个list合并为1个list的方法
Jun 27 Python
如何安装多版本python python2和python3共存以及pip共存
Sep 18 Python
Python实现数据结构线性链表(单链表)算法示例
May 04 Python
django中使用Celery 布式任务队列过程详解
Jul 29 Python
使用Pytorch来拟合函数方式
Jan 14 Python
PyTorch的SoftMax交叉熵损失和梯度用法
Jan 15 Python
PyTorch 导数应用的使用教程
Aug 31 Python
golang特有程序结构入门教程
Jun 02 Python
Python常用类型转换实现代码实例
Jul 28 #Python
Python 如何创建一个线程池
Jul 28 #Python
matplotlib subplot绘制多个子图的方法示例
Jul 28 #Python
python爬虫用mongodb的理由
Jul 28 #Python
python爬虫数据保存到mongoDB的实例方法
Jul 28 #Python
Python3爬虫带上cookie的实例代码
Jul 28 #Python
python实现批处理文件
Jul 28 #Python
You might like
什么是短波收听SWL
2021/03/01 无线电
一个阿拉伯数字转中文数字的函数
2006/10/09 PHP
攻克CakePHP系列二 表单数据显示
2008/10/22 PHP
php使用Jpgraph绘制复杂X-Y坐标图的方法
2015/06/10 PHP
thinkPHP中验证码的简单使用方法
2015/12/26 PHP
twig模板获取全局变量的方法
2016/02/05 PHP
PHP之图片上传类实例代码(加了缩略图)
2016/06/30 PHP
PHP文件下载实例代码浅析
2016/08/17 PHP
PHP mysqli事务操作常用方法分析
2017/07/22 PHP
PHP attributes()函数讲解
2019/02/03 PHP
php框架CI(codeigniter)自动加载与自主创建对象操作实例分析
2020/06/06 PHP
js实现滚动条滚动到某个位置便自动定位某个tr
2021/01/20 Javascript
javascript正则表达式总结
2016/02/29 Javascript
Node.js 日志处理模块log4js
2016/08/28 Javascript
jQuery实现的多张图无缝滚动效果【测试可用】
2016/09/12 Javascript
微信小程序排坑指南详解
2018/05/23 Javascript
JSON数据中存在单个转义字符“\”的处理方法
2018/07/11 Javascript
原生js实现each方法实例代码详解
2019/05/27 Javascript
JavaScript实现更换背景图片
2019/10/18 Javascript
微信小程序实现底部弹出模态框
2020/11/18 Javascript
python2 与 pyhton3的输入语句写法小结
2018/09/10 Python
python使用mitmproxy抓取浏览器请求的方法
2019/07/02 Python
对python中的装包与解包实例详解
2019/08/24 Python
TensorFlow实现checkpoint文件转换为pb文件
2020/02/10 Python
详解vscode实现远程linux服务器上Python开发
2020/11/10 Python
html5的pushstate以及监听浏览器返回事件的实现
2020/08/11 HTML / CSS
印度最大的时尚购物网站:Myntra
2018/09/13 全球购物
请介绍一下Ant
2016/07/22 面试题
竞聘上岗演讲稿范文
2014/01/10 职场文书
公务员中国梦演讲稿
2014/08/19 职场文书
2014年社区居委会主任重阳节讲话稿
2014/09/25 职场文书
2014年教育培训工作总结
2014/12/08 职场文书
项目负责人岗位职责
2015/02/15 职场文书
实习护士自荐信
2015/03/25 职场文书
2015年底工作总结范文
2015/05/15 职场文书
JavaWeb Servlet实现网页登录功能
2021/07/04 Java/Android