爬虫可以简单分为三步骤:请求数据、解析数据和存储数据 。主要的一些工具如下:

请求相关

request

一个阻塞式http请求库。

Selenium

Selenium是一个自动化测试工具,可以驱动浏览器执行特定的动作,如点击,下拉等操作。对于一些javascript渲染的页面,这种抓取方式非常有效,做到可见即可爬。

ChromeDriver、GeckoDriver

只有安装了ChromeDriver和GeckoDriver之后,Selenium才能驱动Chrome或者Firefox浏览器来做相应的网页抓取。当然,需要关闭浏览器的更新功能,避免版本不一致。

PhantomJS

PhantomJS是一个无界面的、可脚本编程的WebKit浏览器引擎,原生支持多种Web标准:Dom操作、CSS选择器、JSON、Canvas和SVG。Selenium支持PhantomJS,在运行的时候不会再弹出一个浏览器。

aiohttp

相比于requests,aiohttp是一个提供异步Web服务的库。

解析相关

lxml

lxml是Python的一个解析库,支持HTML和XML的解析,支持XPath解析方式,而且解析效率高。

Beautiful Soup

Beautiful Soup可以方便的从网页中提取数据,拥有强大的API和多样的解析方式,在解析时依赖解析器,如:lxml。

pyquery

pyquery提供了和jQuery类似的语法来解析HTML文档,支持CSS选择器,使用方便。

tesserocr

tesserocr是Python的一个OCR识别库,是对tesseract做的一层Python API封装,因此,在安装tesserocr之前,需要先安装tesseract。pip3 install tesserocr pillow命令由于网络安装不了时,可以下载相应的.whl文件,进行pip3 install XXX.whl命令安装tesserocr,再pip3 install pillow。

存储库相关

如果想将数据存储到MySQL、MongoDB或Redis中,则需要分别借助PyMySQL、PyMongo、redis-py或者RedisDump来操作。

Web相关

Flask

Flask是一个轻量级的Web服务程序,简单、易用、灵活,可以用来做一些API服务。我们可以使用Flask+Redis维护动态代理池和Cookies池。

Tornado

Tornado是一个支持异步的Web框架,通过使用非阻塞I/O流,可以支撑成千上万的开放连接,效率非常高。

APP爬取相关

Charles

Charles是一个网络抓包工具,相比Fiddler,功能更强大,而且跨平台支持得更好

mitmproxy

mitmproxy是一个支持HTTP和HTTPS的抓包程序,类似Fiddler、Charles的功能,只不过通过控制台的形式操作。另外,mitmproxy还有两个关联组件,一个是mitmdump,它是mitproxy的命令行接口,利用它可以对接Python脚本,实现监听后的处理;另一个是mitmweb,它是一个Web程序,通过它以清楚地观察到mitmproxy捕获的请求。

Appium

Appium是移动端的自动化测试工具,类似于Selenium,利用它可以驱动Android、IOS等设备完成自动化测试,比如模拟点击、滑动、输入等操作。

爬虫框架

pyspider

pyspider是国人binux编写的强大网络爬虫框架,带有强大的WebUI、脚本编辑器、任务监控器、项目管理器以及结果处理器,同时支持多种数据库后端、多种消息队列,另外还支持javascript渲染页面的爬取。

Scrapy

Scrapy是一个十分强大的爬虫框架,依赖的库比较多,至少需要依赖有Twisted14.0、lxml3.4和pyOpenSSL 0.14。在不同的平台环境下,所依赖的库也各不相同,所以在安装之前,最好确保把一些基本库安装好。

Scrapy-Splash

Scrapy-Splash是一个Scrapy中支持javascript渲染的工具。

Scrapy-Redis

Scrapy-Redis是Scrapy的分布式扩展模块,通过它可以方便地实现Scrapy分布式爬虫的搭建。

部署相关

Docker、Scrapyd、Scrapyd-Client、Scrapyd API、Scrapyrt、Gerapy等。

python爬虫软件-一些Python爬虫工具相关推荐

  1. python做电脑软件-Python编程软件(专业电脑编程工具)V3.9.1 最新版

    Python编程软件(专业电脑编程工具)是一款十分优秀好用的专业电脑编程辅助工具.哪款编程工具比较好用?小编为你推荐这款Python编程软件,功能强大全面,使用后可以帮助用户更轻松高效的进行电脑编程操 ...

  2. python电脑下载什么软件-Python编程软件(专业电脑编程工具)V3.9.1 最新版

    Python编程软件(专业电脑编程工具)是一款十分优秀好用的专业电脑编程辅助工具.哪款编程工具比较好用?小编为你推荐这款Python编程软件,功能强大全面,使用后可以帮助用户更轻松高效的进行电脑编程操 ...

  3. python学习软件-学习python用什么软件

    随着Python的热度与日俱增,越来越多的同学开始转行或是零基础学习Python,问题也就接踵而至.许多刚刚入门的同学都有一个问题,那就是Python的学习和开发需要用到什么软件呢?今天小编就来为大家 ...

  4. 免费学python的软件-初学python编程,有哪些不错的软件值得一用?

    推荐些适合初学用python编程的软件,有一些软件虽然功能强大,也广受大家认可,但个人不认为适合初学者.比如PyCharm.Anaconda. IDLE 作为Python默认安装的 ide,基本的功能 ...

  5. python自学软件-学习python用什么软件

    随着Python的热度与日俱增,越来越多的同学开始转行或是零基础学习Python,问题也就接踵而至.许多刚刚入门的同学都有一个问题,那就是Python的学习和开发需要用到什么软件呢?今天小编就来为大家 ...

  6. python中文版软件下载-Python中文版

    python中文版是一种面向对象的解释型计算机程序设计语言.python中文版官网面向对象编程,拥有高效的高级数据结构和简单而有效的方法,其优雅的语法.动态类型.以及天然的解释能力,让它成为理想的语言 ...

  7. python是软件吗-python运行环境是什么

    1.准备好安装包 1)上python官网下载python运行环境(https://www.python.org/downloads/),目前比较稳定的是python-3.5.2 2)上pycharm官 ...

  8. python所有软件-这些Python开源软件解决了程序员几乎所有的问题

    任何编程语言的榜单上,前几位都少不了Python,并且其受欢迎程度非常稳定.Python的强大在于两个方面,一是其语言本身,虽然被"诟病"为胶水语言,但其"简单" ...

  9. python电脑软件下载-Python for windows

    Python是一门跨平台的脚本语言,Python规定了一个Python语法规则,实现了Python语法的解释程序就成为了Python的解释器,我们用的比较多的是C版本的Python,也就是使用C语言实 ...

最新文章

  1. Thrift的接口定义语言IDL
  2. antd Drawer 如何实现自动刷新
  3. web developer tips (8):创建web用户控件并包含在web页面里
  4. 小企业服务器设置位置,小企业服务器配置
  5. 加速业务交付,从 GKE 上使用 Kubernetes 和 Istio 开始
  6. @大学生|计算机专业怎么要怎么学?掌握这四点,毕业即就业!
  7. 在CentOS上安装Docker
  8. 视频语音识别_视频语音识别体验_视频语音识别试用 - 云+社区 - 腾讯云
  9. iOS底层探索之类的结构—cache分析(下)
  10. python情感词典计算得分_利用情感词典计算调研纪要中的情感得分
  11. JAVA微信小程序商城源码:带完整后台运行版
  12. 基于python管理系统论文_基于Python的学生信息管理系统
  13. 无人机倾斜摄影测量土方计算
  14. Java不停的gc_java – 我的应用程序不断运行Full GC!
  15. Java 开发中遇到的印象深刻的问题
  16. 【详解】Executors框架之Executors
  17. 怎么用计算机编写文件,怎样在电脑上写作文做文件
  18. Hexo-fluid主题添加51LA统计
  19. 浅谈Flash Socket通信安全沙箱
  20. 本科生如何入门GNSS算法(二)- rtklib定位解算过程中的GNSS数据格式以及基本概念

热门文章

  1. 201771010106东文财《面向对象程序设计(java)》实验12
  2. 运行时异常与一般异常区别
  3. 使用mint-ui开发项目的一些所得
  4. 第二阶段个人冲刺第一天总结
  5. 数学图形(1.45)毛雷尔玫瑰(Maurer rose)
  6. asp.net select Case条件语句的使用方法
  7. linux m4a 转换成 mp3
  8. 不懂编程可以自学python吗-会Python的人工作不会太差?编程课真的有必要学吗?...
  9. python怎么自学、可以达到什么程度-Python学到什么程度才算精通?天津Python培训...
  10. python手机版做小游戏代码大全-Python大牛手把手教你做一个小游戏,萌新福利!...