分享技术,记录生活,在互联网上留下属于自己的一亩三分地。

Deepin15.5安装Scrapy-Splash

Linux novadmin 1790℃ 0评论

Scrapy-Splash是一个Scrapy中支持JavaScript渲染的工具,安装部分有两部分:

一个是Splash服务的安装,通过Docker进行安装,安装之后,会启动一个Splash服务,我们可以通过它的接口实现JavaScript页面的加载。

另外一个是Scrapy-Splash的Python库的安装,安装之后即可在Scrapy中使用Splash服务。

1、docker的安装在前面已经有说过

具体安装docker的办法请参考:Deepin15.5系统安装新版本的docker

2、安装Splash

Scrapy-Splash会使用Splash的HTTP API 进行页面渲染,所以我们需要安装Splash来提供渲染服务,安装命令如下:


zhj@zhj-PC:~$ sudo docker run -p 8050:8050 scrapinghub/splash

然后会有类似的信息如下:


Unable to find image 'scrapinghub/splash:latest' locally
latest: Pulling from scrapinghub/splash
1be7f2b886e8: Pull complete 
6fbc4a21b806: Pull complete 
c71a6f8e1378: Pull complete 
4be3072e5a37: Pull complete 
06c6d2f59700: Pull complete 
ba70d52f4d83: Pull complete 
e9f7760ce7af: Pull complete 
16259f7c35ad: Downloading [=====>                                             ]  42.82MB/393.1MB
efb2fb9620cf: Download complete 
31e4491cc70e: Download complete 

我们等着安装完成。

3、如果有下面提示,则说明已经启动成功:


Status: Downloaded newer image for scrapinghub/splash:latest
2018-05-26 02:15:46+0000 [-] Log opened.
2018-05-26 02:15:46.979464 [-] Splash version: 3.2
2018-05-26 02:15:46.980038 [-] Qt 5.9.1, PyQt 5.9, WebKit 602.1, sip 4.19.3, Twisted 16.1.1, Lua 5.2
2018-05-26 02:15:46.980184 [-] Python 3.5.2 (default, Nov 23 2017, 16:37:01) [GCC 5.4.0 20160609]
2018-05-26 02:15:46.980286 [-] Open files limit: 1048576
2018-05-26 02:15:46.980370 [-] Can't bump open files limit
2018-05-26 02:15:47.157515 [-] Xvfb is started: ['Xvfb', ':1499295518', '-screen', '0', '1024x768x24', '-nolisten', 'tcp']
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
2018-05-26 02:15:50.057791 [-] proxy profiles support is enabled, proxy profiles path: /etc/splash/proxy-profiles
2018-05-26 02:15:50.758159 [-] verbosity=1
2018-05-26 02:15:50.758356 [-] slots=50
2018-05-26 02:15:50.758632 [-] argument_cache_max_entries=500
2018-05-26 02:15:50.759391 [-] Web UI: enabled, Lua: enabled (sandbox: enabled)
2018-05-26 02:15:50.759560 [-] Server listening on 0.0.0.0:8050
2018-05-26 02:15:50.760507 [-] Site starting on 8050
2018-05-26 02:15:50.760715 [-] Starting factory <twisted.web.server.Site object at 0x7fac926097f0>

 

4、然后我们使用浏览器测试一下

http://localhost:8050

如下图:

到此已经安装成功。

 

5、如果我们让Splash的docker安装在远程服务器上(因为刚才的启动方式,如果关闭掉终端,或者中断了,则Splash也停止了),并且以守护进程运行,则执行下面的命令;


zhj@zhj-PC:~$ sudo docker run -d -p 8050:8050 scrapinghub/splash

f990a7e8474d412e0075d25152a5c97a92b8f32b01fd46ac0080e35c085b455f

这里加了一个-d参数,则表明,以守护进程运行,具体docker命令,可以查看官方手册。

 

6、Scrapy-Splash的安装

安装完Splash后,我们需要安装Python库,命令如下:


zhj@zhj-PC:~$ sudo pip3 install scrapy-splash

则有下面的提示,表示安装成功


Collecting scrapy-splash
  Downloading https://files.pythonhosted.org/packages/64/19/aa6e9559ca16a4daec98f6451748dd1cae9a91e7f43069cc1d294f7576bc/scrapy_splash-0.7.2-py2.py3-none-any.whl
Installing collected packages: scrapy-splash
Successfully installed scrapy-splash-0.7.2

到此为止已经安装成功;

转载请注明:Nov » Deepin15.5安装Scrapy-Splash

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址