如何使用停靠工具箱运行Splash [英] How to run splash using docker toolbox
本文介绍了如何使用停靠工具箱运行Splash的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试Scrppy和Splash,以便从网络上清除动态内容,我使用的是Windows10家庭版。有没有办法用Docker工具箱代替docker桌面来处理Splash?
docker工具箱说,它是不能运行docker桌面的系统的替代方案。Docker桌面应用程序是Splash所必需的,它需要Windows 10专业版或企业版。
我找不到为Splash配置docker-工具箱的方法。有什么指南可以帮助我在Windows10家庭版上使用docker-工具箱配置Splash吗?谢谢!
推荐答案
它也可以与docker-toolbox
配合使用。只需遵循类似的过程,并确保您提供了可以通过以下方式访问的docker全局URL:
docker-machine ip default
如果您不知道流程,可以使用scrapy-splash
:
在停靠器上运行启动
# Install Docker 'http://docker.io/'
# Pull the image:
$ sudo docker pull scrapinghub/splash
# Start the container:
$ sudo docker run -p 8050:8050 -p 5023:5023 scrapinghub/splash
# Splash is now available at 192.168.99.100 at ports 8050 (http) and 5023 (telnet).
插入scrapy.setting
# splash for scripting or js dependent web-page
# Access docker-machine ip=> docker-machine ip default
SPLASH_URL = '<docker-hosted machine ip:port>' # docker url
#SPLASH_URL = 'http://192.168.99.100:8050' # docker url
DOWNLOADER_MIDDLEWARES = {
'scrapy_splash.SplashCookiesMiddleware': 723,
'scrapy_splash.SplashMiddleware': 725,
'scrapy.downloadermiddlewares.httpcompression.HttpCompressionMiddleware': 810,
}
SPIDER_MIDDLEWARES = {
'scrapy_splash.SplashDeduplicateArgsMiddleware': 100,
}
DUPEFILTER_CLASS = 'scrapy_splash.SplashAwareDupeFilter'
正在分析URL..在URL中生成之前添加开机画面元
response.meta['splash'] = {'args': { 'html': 1, 'png': 1}, 'endpoint': 'render.json'}
yield scrapy.Request(response.url, callback=self.parse_page, meta=response.meta)
有关更多详细信息,请查看此文档:
javascript-in-scrapy-with-splash
splash-through-http-api
这篇关于如何使用停靠工具箱运行Splash的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文