美文网首页
无标题文章

无标题文章

作者: 尼古拉斯_特仑苏 | 来源:发表于2018-05-09 10:40 被阅读56次

    一、前言   

    由于最近使用Python爬虫框架scrapy练习爬虫,在爬取动态网页的时候,需要用到splash,进行对动态网页进行JavaScript渲染,但是使用splash又必须安装Docker。因为对Docker比较陌生,只能进行恶补。其中很多教程是基础Linux和windows环境下的安装,Mac下的相对较少,今天基于我自己的实践,给大家分享一下Mac环境下的安装运行教程,有不妥的地方欢迎指正。   

    二、安装Splash之前需要安装Docker的原因   

    Splash是一个利用webkit或者基于webkit库 Javascript渲染服务。它是一个实现了HTTP API的轻量级浏览器,Splash是用Python实现的,同时使用Twisted和QT。官方文档解释是必须使用Docker容器!之所以用容器技术,好处是你可以一坨的安装好splash,而不必一点一点的去为安装splash填坑。

    三、Mac下Docker下载及安装

    [下载地址传送](https://www.docker.com/get-docker)   

    1、打开连接后找到如下图所示的位置,点击Mac图标,进入Mac下载页面 

    2、在下载页面,点击 Get Docker进行下载 

    3、下载完成后进行安装

    四、按照如下命令进行安装运行Splash

    1、安装命令: 

    >>docker pull scrapinghub/splash   

    2、运行命令:

    >>docker run -p 8050:8050 -p 5023:5023 scrapinghub/splash 

    3、按照命令提示,在浏览器运行 [localhost:8050](http://0.0.0.0:8050/)

    如果出现一下界面则证明运行成功。   

    之后你就可以愉快的玩耍Docker以及Splash了。 

    五、需要注意的地方

    1、安装好splash之后,你可能访问不到,很大一定程度是你把ip弄错了,你访问的应该是你虚拟机的ip:8050,所以你首先要用ifconfig得到linux的ip地址,然后再在你本地浏览器输入ip:8050,则可打开如上图界面。因为网上查的都是liunx下的资料,ip直接用localhost就可以,一直访问不了,其实mac下面,docker splash是会虚拟出一个新的ip的,这个地址需要用上面的命令ifconfig查出。

    2、你虚拟机地址可能每次重启都在变,所以你在渲染的时候一定要注意更改middleware里面ip的地址,不然无法渲染,你原因都找不到

    最后再给大家一个[Docker中文教程地址](http://www.docker.org.cn/book/install/supported-platform-17.html),以及[Windows下的教程](https://www.jianshu.com/p/4052926bc12c)。

    相关文章

      网友评论

          本文标题:无标题文章

          本文链接:https://www.haomeiwen.com/subject/mdjmlttx.html