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使用urllib2模块获取gravatar头像实例
Dec 18 Python
Python中生成器和yield语句的用法详解
Apr 17 Python
Django的数据模型访问多对多键值的方法
Jul 21 Python
Python的Twisted框架上手前所必须了解的异步编程思想
May 25 Python
Python Pandas批量读取csv文件到dataframe的方法
Oct 08 Python
Django打印出在数据库中执行的语句问题
Jul 25 Python
python实现获取单向链表倒数第k个结点的值示例
Oct 24 Python
在django admin详情表单显示中添加自定义控件的实现
Mar 11 Python
python实现AHP算法的方法实例(层次分析法)
Sep 09 Python
matplotlib自定义鼠标光标坐标格式的实现
Jan 08 Python
python 获取域名到期时间的方法步骤
Feb 10 Python
Python自动化爬取天眼查数据的实现
Jun 15 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
Linux环境下搭建php开发环境的操作步骤
2013/06/17 PHP
php 调用百度sms来发送短信的实现示例
2018/11/02 PHP
实用javaScript技术-屏蔽类
2006/08/15 Javascript
使用javascript访问XML数据的实例
2006/12/27 Javascript
javascript document.execCommand() 常用解析
2009/12/14 Javascript
javascript中IE浏览器不支持NEW DATE()带参数的解决方法
2012/03/01 Javascript
js对象转json数组的简单实现案例
2014/02/28 Javascript
jquery插件推荐 jquery.cookie
2014/11/09 Javascript
JS运动框架之分享侧边栏动画实例
2015/03/03 Javascript
使用AngularJS创建自定义的过滤器的方法
2015/06/18 Javascript
jquery实现Ctrl+Enter提交表单的方法
2015/07/21 Javascript
Bootstrap整体框架之CSS12栅格系统
2016/12/15 Javascript
微信小程序 template模板详解及实例
2017/02/21 Javascript
干货!教大家如何选择Vue和React
2017/03/13 Javascript
nodejs微信扫码支付功能实现
2018/02/17 NodeJs
vue 多入口文件搭建 vue多页面搭建的实例讲解
2018/03/12 Javascript
BootStrap中的模态框(modal,弹出层)功能示例代码
2018/11/02 Javascript
小程序实现搜索框
2020/06/19 Javascript
vue父组件给子组件的组件传值provide inject的方法
2019/10/23 Javascript
Vue+Element自定义纵向表格表头教程
2020/10/26 Javascript
对Python中内置异常层次结构详解
2018/10/18 Python
Python lambda表达式用法实例分析
2018/12/25 Python
python3通过selenium爬虫获取到dj商品的实例代码
2019/04/25 Python
详解python解压压缩包的五种方法
2019/07/05 Python
ubuntu16.04升级Python3.5到Python3.7的方法步骤
2020/08/20 Python
鞋子女王塔玛拉·梅隆同名奢侈品牌:Tamara Mellon
2017/11/22 全球购物
违纪检讨书2000字
2014/02/08 职场文书
企业安全生产责任书
2014/04/14 职场文书
找工作求职信
2014/07/07 职场文书
2014年党务公开工作总结
2014/12/09 职场文书
大学生助学金感谢信
2015/01/21 职场文书
2015年入党积极分子评语
2015/03/26 职场文书
2015大学生入党个人自传
2015/06/26 职场文书
2016年大学生暑期社会实践方案
2015/11/26 职场文书
Laravel中获取IP的真实地理位置
2021/04/01 PHP
python简单验证码识别的实现过程
2021/06/20 Python