Python3网络爬虫实战-11、爬虫框架的安装:ScrapySplash、ScrapyRedis

ScrapySplash的安装

ScrapySplash 是一个 Scrapy 中支持 JavaScript 渲染的工具,本节来介绍一下它的安装方式。
ScrapySplash 的安装分为两部分,一个是是 Splash 服务的安装,安装方式是通过 Docker,安装之后会启动一个 Splash 服务,我们可以通过它的接口来实现 JavaScript 页面的加载。另外一个是 ScrapySplash 的 Python 库的安装,安装之后即可在 Scrapy 中使用 Splash 服务。

1. 相关链接

2. 安装Splash

ScrapySplash 会使用 Splash 的 HTTP API 进行页面渲染,所以我们需要安装 Splash 来提供渲染服务,安装是通过 Docker 安装,在这之前请确保已经正确安装好了 Docker。
安装命令如下:

docker?run -p?8050:8050?scrapinghub/splash

安装完成之后会有类似的输出结果:

2017-07-03 08:53:28+0000 [-] Log opened.
2017-07-03 08:53:28.447291 [-] Splash version: 3.0
2017-07-03 08:53:28.452698 [-] Qt 5.9.1, PyQt 5.9, WebKit 602.1, sip 4.19.3, Twisted 16.1.1, Lua 5.2
2017-07-03 08:53:28.453120 [-] Python 3.5.2 (default, Nov 17 2016, 17:05:23) [GCC 5.4.0 20160609]
2017-07-03 08:53:28.453676 [-] Open files limit: 1048576
2017-07-03 08:53:28.454258 [-] Can‘t bump open files limit
2017-07-03 08:53:28.571306 [-] Xvfb is started: [‘Xvfb‘, ‘:1599197258‘, ‘-screen‘, ‘0‘, ‘1024x768x24‘, ‘-nolisten‘, ‘tcp‘]
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to ‘/tmp/runtime-root‘
2017-07-03 08:53:29.041973 [-] proxy profiles support is enabled, proxy profiles path: /etc/splash/proxy-profiles
2017-07-03 08:53:29.315445 [-] verbosity=1
2017-07-03 08:53:29.315629 [-] slots=50
2017-07-03 08:53:29.315712 [-] argument_cache_max_entries=500
2017-07-03 08:53:29.316564 [-] Web UI: enabled, Lua: enabled (sandbox: enabled)
2017-07-03 08:53:29.317614 [-] Site starting on 8050
2017-07-03 08:53:29.317801 [-] Starting factory <twisted.web.server.Site object at 0x7ffaa4a98cf8>
Python资源分享qun 784758214 ,内有安装包,PDF,学习视频,这里是Python学习者的聚集地,零基础,进阶,都欢迎

这样就证明 Splash 已经在 8050 端口上运行了。
这时我们打开:http://localhost:8050 即可看到 Splash 的主页,如图 1-81 所示:

图 1-81 运行页面
当然 Splash 也可以直接安装在远程服务器上,我们在服务器上运行以守护态运行 Splash 即可,命令如下:

docker?run -d -p?8050:8050?scrapinghub/splash

在这里多了一个 -d 参数,它代表将 Docker 容器以守护态运行,这样在中断远程服务器连接后不会终止 Splash 服务的运行。

3. ScrapySplash的安装

成功安装了 Splash 之后,我们接下来再来安装一下其 Python 库,安装命令如下:

pip3?install?scrapy-splash

命令运行完毕后就会成功安装好此库,后文我们会介绍它的详细用法。

ScrapyRedis的安装

ScrapyRedis 是 Scrapy 分布式的扩展模块,有了它我们可以方便地实现 Scrapy 分布式爬虫的搭建,本节来介绍一下 ScrapyRedis 的安装方式。

1. 相关链接

2. Pip安装

推荐使用 Pip 安装,命令如下:

pip3?install?scrapy-redis

3. 测试安装

安装完成之后,可以在 Python 命令行下测试。

$ python3
>>> import scrapy_redis
Python资源分享qun 784758214 ,内有安装包,PDF,学习视频,这里是Python学习者的聚集地,零基础,进阶,都欢迎

如果没有错误报出,则证明库已经安装好了。

原文地址:https://blog.51cto.com/14445003/2425406

时间: 2024-09-30 15:08:29

Python3网络爬虫实战-11、爬虫框架的安装:ScrapySplash、ScrapyRedis的相关文章

爬虫学习 11.scrapy框架持久化存储

爬虫学习 11.scrapy框架持久化存储 基于终端指令的持久化存储 基于管道的持久化存储 今日详情 1.基于终端指令的持久化存储 保证爬虫文件的parse方法中有可迭代类型对象(通常为列表or字典)的返回,该返回值可以通过终端指令的形式写入指定格式的文件中进行持久化操作. 执行输出指定格式进行存储:将爬取到的数据写入不同格式的文件中进行存储 scrapy crawl 爬虫名称 -o xxx.json scrapy crawl 爬虫名称 -o xxx.xml scrapy crawl 爬虫名称

爬虫实战:爬虫之 web 自动化终极杀手 ( 上)

欢迎大家前往腾讯云技术社区,获取更多腾讯海量技术实践干货哦~ 作者:陈象 导语: 最近写了好几个简单的爬虫,踩了好几个深坑,在这里总结一下,给大家在编写爬虫时候能给点思路.本次爬虫内容有:静态页面的爬取.动态页面的爬取.web自动化终极爬虫. 分析: 数据获取(主要靠爬虫) 静态网页爬取 动态网页爬取 数据存储(python excel存储) Python Excel操作,保存结果 数据获取实战: 百度音乐(静态网页) 分析步骤1 . 打开百度音乐:http://music.baidu.com/

Python3网络爬虫实战-3、数据库的安装:MySQL、MongoDB、Redis

抓取下网页代码之后,下一步就是从网页中提取信息,提取信息的方式有多种多样,可以使用正则来提取,但是写起来会相对比较繁琐.在这里还有许多强大的解析库,如 LXML.BeautifulSoup.PyQuery 等等,提供了非常强大的解析方法,如 XPath 解析.CSS 选择器解析等等,利用它们我们可以高效便捷地从从网页中提取出有效信息. 本节我们就来介绍一下这些库的安装过程. 1.2.1 LXML的安装 LXML 是 Python 的一个解析库,支持 HTML 和 XML 的解析,支持 XPath

python应用之爬虫实战1 爬虫基本原理

知识内容: 1.爬虫是什么 2.爬虫的基本流程 3.request和response 4.python爬虫工具 参考:http://www.cnblogs.com/linhaifeng/articles/7773496.html 一.爬虫是什么 1.爬虫定义 爬虫:把互联网比作一张大的蜘蛛网,那一台计算机上的数据便是蜘蛛网上的一个猎物,而爬虫程序就是一只小蜘蛛,沿着蜘蛛网抓取自己想要的猎物/数据,  爬虫实质是向网站发起请求,获取资源后分析并提取有用数据的程序  2.爬虫分类 定向:爬取特定领域

2017.08.10 Python爬虫实战之爬虫攻防篇

1.封锁user-agent破解: user-agent是浏览器的身份标识,网站就是通过user-agent来确定浏览器类型的.有很多网站会拒绝不符合一定标准的user-agent请求网页,如果网站将频繁访问网站的user-agent作为爬虫的标志,然后加入黑名单该怎么办? (1)首先在meiju项目下,settings.py的同级目录创建middlewares目录,进入middlewares目录,创建__init__.py,将middlewares目录变成一个Python模块 (2)创建资源文

2017.08.10 Python爬虫实战之爬虫攻防

1.创建一般的爬虫:一般来说,小于100次访问的爬虫都无须为此担心 (1)以爬取美剧天堂为例,来源网页:http://www.meijutt.com/new100.html,项目准备: scrapy startproject meiju100 F:\Python\PythonWebScraping\PythonScrapyProject>cd meiju100 F:\Python\PythonWebScraping\PythonScrapyProject\meiju100>scrapy gen

Muduo网络库实战(一):安装和配置

1. 参考资料 <Muduo_网络库使用手册> 2. 实战记录 1) muduo依赖项安装 centos安装cmake命令:# yum install cmake centos安装libboost库:推荐使用源码安装,因为命令安装后发现muduo编译出错: (链接:boost命令安装&&源码安装) 备注: tar.bz2 解压命令 tar -jxvf *.tar.bz2 2)muduo安装位置 cd muduo源文件夹 =>../build文件夹中

2017年最新Python3.6网络爬虫实战案例基础+实战+框架+分布式高清视频教程

课程简介: 这是一套目前为止我觉得最适合小白学习的体系非常完整的Python爬虫课程,使用的Python3.6的版本,用到anaconda来开发python程序,老师讲解的很细致,课程体系设置的也非常棒,完全是从浅入深一点点讲解,从Python爬虫环境的安装开始,讲解了最最基本的urllib包如何使用,如何解析request请求内容,刷选有用数据,像ajax,post,html,json等等都非常细致的一一讲解,然后逐步深入到如何利用cookie,ip代{过}{滤}理池的技术,来解决登陆验证与防

《python3网络爬虫开发实战》--Scrapy

1. 架构 引擎(Scrapy):用来处理整个系统的数据流处理, 触发事务(框架核心) 调度器(Scheduler):用来接受引擎发过来的请求, 压入队列中, 并在引擎再次请求的时候返回. 可以想像成一个URL(抓取网页的网址或者说是链接)的优先队列, 由它来决定下一个要抓取的网址是什么, 同时去除重复的网址 下载器(Downloader):用于下载网页内容, 并将网页内容返回给蜘蛛(Scrapy下载器是建立在twisted这个高效的异步模型上的) 爬虫(Spiders):爬虫是主要干活的, 用