一些Python爬虫工具

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

请求相关

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。

存储库相关

如果想将数据存储到MySQL、MongoDB或Redis中,则需要分别借助PyMySQLPyMongoredis-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等。

原文地址:https://www.cnblogs.com/aaron-shu/p/4191280.html

时间: 2024-08-02 18:22:07

一些Python爬虫工具的相关文章

一个python爬虫工具类

写了一个爬虫工具类. # -*- coding: utf-8 -*- # @Time : 2018/8/7 16:29 # @Author : cxa # @File : utils.py # @Software: PyCharm from retrying import retry from decorators.decorators import decorator from glom import glom from config import headers import datetim

Python爬虫和情感分析简介

摘要 这篇短文的目的是分享我这几天里从头开始学习Python爬虫技术的经验,并展示对爬取的文本进行情感分析(文本分类)的一些挖掘结果. 不同于其他专注爬虫技术的介绍,这里首先阐述爬取网络数据动机,接着以豆瓣影评为例介绍文本数据的爬取,最后使用文本分类的技术以一种机器学习的方式进行情感分析.由于内容覆盖面巨大,无法详细道尽,这篇文章旨在给那些对相关领域只有少量或者没有接触的人一个认知的窗口,希望激发读者自行探索的兴趣. 以下的样本代码用Pyhton写成,主要使用了scrapy, sklearn两个

2019最新Python学习教程(Python学习路线_Python爬虫教程)爬虫工程师必备的10个爬虫工具

2019最新Python学习教程(Python学习路线_Python爬虫教程)爬虫工程师必备的10个爬虫工具 爬虫工程师必备的10个爬虫工具! 最近很多学爬虫的伙伴让推荐顺手的爬虫工具,总结了一下,把这些好用的爬虫工具都跟你们找齐活了! 磨刀不误砍柴工!都知道工欲善其事必先利其器,那么作为经常要和各大网站做拉锯战的爬虫工程师们,更需要利用利用好身边的一切法器,才能更快的攻破对方防线.这里以日常爬虫流程,给大家介绍十款爬虫工具,相信大家掌握以后,工作效率提高是完全没有问题了! 大家也可以看看有你们

工具准备的差不多了,接下来就是python爬虫的封装了

python爬虫的方便大家都懂的.那么,既然常用,那么我们当然要封装啦. 那么我们可以先封装一个父类的爬虫 我自己的设计想法就是,首先,爬虫必须要有个字段来存储匹配的规则gainRule,然后有个字段存储需要取什么属性outAttr, 然后就是有个需要处理的数据列表gainList,最后是一个存储输出列表数据的outList,和存储输出单条数据的outData 那么这个爬虫的父类定义如下 from bs4 import BeautifulSoup import requests import r

转载:用python爬虫抓站的一些技巧总结

原文链接:http://www.pythonclub.org/python-network-application/observer-spider 原文的名称虽然用了<用python爬虫抓站的一些技巧总结>但是,这些技巧不仅仅只有使用python的开发可以借鉴,我看到这篇文章的时候也在回忆自己做爬虫的过程中也用了这些方法,只是当时没有系统的总结而已,谨以此文为鉴,为以前的爬虫程序做一个总结. 转载原文如下: 学用python也有3个多月了,用得最多的还是各类爬虫脚本:写过抓代理本机验证的脚本,

python 爬虫抓取心得

quanwei9958 转自 python 爬虫抓取心得分享 urllib.quote('要编码的字符串') 如果你要在url请求里面放入中文,对相应的中文进行编码的话,可以用: urllib.quote('要编码的字符串') query = urllib.quote(singername) url = 'http://music.baidu.com/search?key='+query response = urllib.urlopen(url) text = response.read()

Python 爬虫批量下载美剧 from 人人影视 HR-HDTV

本人比較喜欢看美剧.尤其喜欢人人影视上HR-HDTV 的 1024 分辨率的高清双字美剧,这里写了一个脚本来批量获得指定美剧的全部 HR-HDTV 的 ed2k下载链接.并依照先后顺序写入到文本文件,供下载工具进行批量下载.比方用迅雷.先打开迅雷,然后复制全部下载链接到剪切板,迅雷会监视剪切板来新建全部任务.假设迅雷没有自己主动监视,能够自己点击新建然后粘贴链接.Python源码例如以下.用的是Python3 : # python3 实现,以下的实例 3 部美剧爬完大概要 10 s import

教你分分钟学会用python爬虫框架Scrapy爬取心目中的女神

欢迎加入Python学习交流群:535993938  禁止闲聊 ! 名额有限 ! 非喜勿进 ! 本博文将带领你从入门到精通爬虫框架Scrapy,最终具备爬取任何网页的数据的能力.本文以校花网为例进行爬取,校花网:http://www.xiaohuar.com/,让你体验爬取校花的成就感. Scrapy,Python开发的一个快速,高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy用途广泛,可以用于数据挖掘.监测和自动化测试. Scrapy吸引人的地方在于

从零开始的Python爬虫速成指南

http://python.jobbole.com/87284/ 从零开始的Python爬虫速成指南 2017/01/22 · 实践项目 · 1 评论 · 爬虫 分享到: 11 原文出处: 舞鹤 序 本文主要内容:以最短的时间写一个最简单的爬虫,可以抓取论坛的帖子标题和帖子内容. 本文受众:没写过爬虫的萌新. 入门 0.准备工作 需要准备的东西: Python.scrapy.一个IDE或者随便什么文本编辑工具. 1.技术部已经研究决定了,你来写爬虫. 随便建一个工作目录,然后用命令行建立一个工程