curl - Scrapyd:一旦我使用 scrapyd 安排它,我在哪里可以看到我的爬虫的输出

标签 curl scrapy scrapyd

我是scrapy和scrapyd的新手。做了一些阅读并开发了我的爬虫,它可以爬取一个新闻网站并给我所有的新闻文章。如果我简单地运行爬虫

scrapy crawl project name -o something.txt

它正确地为我提供了 something.txt 中的所有抓取数据。

现在我尝试使用scrapyd 在localhost:6800 上部署我的scrapy 爬虫项目。

我安排了爬虫使用
curl http://localhost:6800/schedule.json -d project=tutorial -d spider=dmoz_spider

它在命令行上给了我这个
{"status": "ok", "jobid": "545dfcf092de11e3ad8b0013d43164b8"}

我认为这是正确的,我什至可以在 localhost:6800 的 UI View 上看到我的爬虫工作

但是我在哪里可以找到我以前在 something.txt 中收集的爬虫抓取的数据。

请帮忙....

这是我的爬虫代码
class DmozSpider(Spider):
    name = "dmoz"
    allowed_domains = ["timesofindia.com"]
    start_urls = ["http://mobiletoi.timesofindia.com/htmldbtoi/TOIPU/20140206/TOIPU_articles__20140206.html"]

    def parse(self, response):
    sel = Selector(response)
        torrent = DmozItem()
    items=[]
    links = sel.xpath('//div[@class="gapleftm"]/ul[@class="content"]/li')
        sel.xpath("//div[@class='gapleftm']/ul[@class='content']/li/b/a/stname/text()").extract()
    sel.xpath("//div[@class='gapleftm']/ul[@class='content']/li/b/a/@href").extract()

    for ti in sel.xpath("//a[@class='pda']/text()").extract():
        yield DmozItem(title=ti)
    for url in sel.xpath("//a[@class='pda']/@href").extract():
        itemLink = urlparse.urljoin(response.url, url)  
        yield DmozItem(link=url)    
        yield Request(itemLink, callback=self.my_parse)

    def my_parse(self, response):
    sel = Selector(response)
    self.log('A response from my_parse just arrived!')
    for head in sel.xpath("//b[@class='pda']/text()").extract():
        yield DmozItem(heading=head)
    for text in sel.xpath("//a[@class='pda']/text()").extract():
        yield DmozItem(desc=text)
    for url_desc in sel.xpath("//a[@class='pda']/@href").extract():
        itemLinkDesc = urlparse.urljoin(response.url, url_desc) 
        yield DmozItem(link=url_desc)   
        yield Request(itemLinkDesc, callback=self.my_parse_desc)

    def my_parse_desc(self, response):
        sel = Selector(response)
        self.log('ENTERED ITERATION OF MY_PARSE_DESC!')
        for bo in sel.xpath("//font[@class='pda']/text()").extract():
            yield DmozItem(body=bo) 

最佳答案

使用提要导出时,您可以使用 URI(通过 FEED_URI 设置)定义存储提要的位置。提要导出支持由 URI 方案定义的多种存储后端类型。

curl http://localhost:6800/schedule.json -d project=tutorial -d spider=dmoz_spider -d setting=FEED_URI=file:///path/to/output.json

关于curl - Scrapyd:一旦我使用 scrapyd 安排它,我在哪里可以看到我的爬虫的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21694051/

相关文章:

virtualenv - 虚拟环境下crontab上的Scrapy爬取

python - 来自通过 Scrapyd 部署的 Scrapy Spider 的自定义 JSON 响应

python - 如何以编程方式设置和启动 Scrapy 蜘蛛(网址和设置)

curl - 从脚本访问/下载github文件的官方方式?

json - 如何将 JSON 文件作为 MessageBody for Amazon SQS 发布?

php - ssl cURL - 将终端 curl 命令转换为 PHP 脚本

python - 使用 Scrapy 和 Python 2.7 递归抓取 Craigslist

python - scrapy:中间件/管道单例

scrapyd - 如何使用scrapy抓取多个域名

ssl - 我的网络服务器上的 CURLOPT_SSLVERSION