十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

一般比价小型的爬虫需求,我是直接使用requests库 + bs4就解决了,再麻烦点就使用selenium解决js的异步 加载问题。相对比较大型的需求才使用框架,主要是便于管理以及扩展等。

1.Scrapy

Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》
《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

特性:

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》
《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

在这里还是要推荐下我自己建的Python开发学习裙:304 零伍零 799,裙里都是学Python开发的,如果你正在学习Python ,小编欢迎你加入,大家都是软件开发党,不定期分享干货(只有Python软件开发相关的),包括我自己整理的一份2018最新的Python进阶资料和高级开发教程,欢迎进阶中和进想深入Python的小伙伴

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》
《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

快速入门

安装

pip install scrapy

创建项目

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

写爬虫

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

运行

scrapy crawl dmoz

这里就简单介绍一下,后面有时间详细写一些关于scrapy的文章,我的很多爬虫的数据都是scrapy基础上实现的。

2.PySpider

PySpider:一个国人编写的强大的网络爬虫系统并带有强大的WebUI。采用Python语言编写,分布式架构,支持多种数据库后端,强大的WebUI支持脚本编辑器,任务监视器,项目管理器以及结果查看器。

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

python 脚本控制,可以用任何你喜欢的html解析包(内置 pyquery)

WEB 界面编写调试脚本,起停脚本,监控执行状态,查看活动历史,获取结果产出

数据存储支持MySQL, MongoDB, Redis, SQLite, Elasticsearch; PostgreSQL 及 SQLAlchemy

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

示例

代开web界面的编辑输入代码即可

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

3.Crawley

Crawley可以高速爬取对应网站的内容,支持关系和非关系数据库,数据可以导出为JSON、XML等。

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

创建project

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

写Python爬虫逻辑

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

配置

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

运行

~$ crawley run

4.Portia

Portia是一个开源可视化爬虫工具,可让您在不需要任何编程知识的情况下爬取网站!简单地注释您感兴趣的页面,Portia将创建一个蜘蛛来从类似的页面提取数据。

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

5.Newspaper

Newspaper可以用来提取新闻、文章和内容分析。使用多线程,支持10多种语言等。作者从requests库的简洁与强大得到灵感,使用python开发的可用于提取文章内容的程序。

支持10多种语言并且所有的都是unicode编码。

示例

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

6.Beautiful Soup

Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间。这个我是使用的特别频繁的。在获取html元素,都是bs4完成的。

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

示例:

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

7.Grab

Grab是一个用于构建Web刮板的Python框架。借助Grab,您可以构建各种复杂的网页抓取工具,从简单的5行脚本到处理数百万个网页的复杂异步网站抓取工具。Grab提供一个API用于执行网络请求和处理接收到的内容,例如与HTML文档的DOM树进行交互。

8.Cola

Cola是一个分布式的爬虫框架,对于用户来说,只需编写几个特定的函数,而无需关注分布式运行的细节。任务会自动分配到多台机器上,整个过程对用户是透明的。

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

案例

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

10 .Python-goose框架

Python-goose框架可提取的信息包括:

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

用法示例

《十个Python爬虫武器库示例,十个爬虫框架,十种实现爬虫的方法!》

更多编程方面的分享请关注微信公众号:程序员大牛!

    原文作者:程序员大牛
    原文地址: https://www.jianshu.com/p/dff78ce848d6
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞