如何让portia蜘蛛跑?

时间:2018-01-15 15:32:59

标签: docker scrapy portia

我不能发送我的蜘蛛。

我使用以下代码之一:

docker run -i -t --rm -v /home/raphael/Documents/entreprise/portia/portia-master/test:/app/data/projects:rw -v /home/raphael/Documents/entreprise/portia/res:/mnt:rw -p 9001:9001 scrapinghub/portia \
            portiacrawl /app/data/projects/Oscaro www.oscaro.com -o /mnt/Oscaro.jl
docker run -i -t --rm -v /home/raphael/Documents/entreprise/portia/portia-master/test:/app/data/projects:rw -v /home/raphael/Documents/entreprise/portia/res:/mnt:rw -p 9001:9001 scrapinghub/portia \
            portiacrawl /app/data/projects/Oscaro

我回来的控制台:

+ action=portiacrawl
+ shift
+ '[' -z portiacrawl ']'
+ case $action in
+ exec portiacrawl /app/data/projects/Oscaro www.oscaro.com -o /mnt/Oscaro.jl
Usage: portiacrawl <project dir/project zip> [spider] [options]

Allow to easily run slybot spiders on console. If spider is not given, print a
list of available spiders inside the project

Options:
  -h, --help            show this help message and exit
  --settings=SETTINGS   Give specific settings module (must be on python path)
  --logfile=LOGFILE     Specify log file
  -a NAME=VALUE         Add spider arguments
  -s NAME=VALUE         Add extra scrapy settings
  -o FILE, --output=FILE
                        dump scraped items into FILE (use - for stdout)
  -t FORMAT, --output-format=FORMAT
                        format to use for dumping items with -o (default:
                        jsonlines)
  -v, --verbose         more verbose

但是,这似乎是文档代码的一个很好的改编:

docker run -i -t --rm -v <PROJECTS_FOLDER>:/app/data/projects:rw -v <OUPUT_FOLDER>:/mnt:rw -p 9001:9001 scrapinghub/portia \
    portiacrawl /app/data/projects/PROJECT_NAME SPIDER_NAME -o /mnt/SPIDER_NAME.jl

我是docker,portia和scrapy的新手。

我无法解决问题的痛苦。

顺便说一下,我不明白这里提出的解决方案: https://emu.one/scrapy/823487/how-do-i-start-running-portia-spider-how-to-do-it.html

我不知道这个解决方案是否与我有关,因为它似乎没有使用docker。

我对代码的第一部分也有疑问。我想知道我写的是做了什么:

-v /home/raphael/Documents/entreprise/portia/portia-master/test:/app/data/projects

我提前感谢你

1 个答案:

答案 0 :(得分:0)

有必要设置相对路径。 :(

docker run -i -t --rm -v ~/Documents/entreprise/portia/portia-master/test:/app/data/projects:rw -v ~/Documents/entreprise/portia/res:/mnt:rw -p 9001:9001 scrapinghub/portia \
            portiacrawl /app/data/projects/Oscaro www.oscaro.com -o /mnt/Oscaro.jl