pyspdier run时运行到on_start就停止 但是单步调试可继续

问题如上,代码如下

#!/usr/bin/env python
# -*- encoding: utf-8 -*-

from pyspider.libs.base_handler import *

class Handler(BaseHandler):
    crawl_config = {
    }

    @every(minutes=24 * 60)
    def on_start(self):
        self.crawl('https://xxxx.com/listSimilarTopics?id=5577b317e4b00ff508c0e780', callback=self.index_page)

    @config(age=10 * 24 * 60 * 60)
    def index_page(self, response):
        for each in response.json['data']:
            print(each['content'])
            self.crawl('https://xxxcom/showDetail?topicId='+ each['id'], callback=self.detail_page)
            self.crawl('https://xxxxcom/istSimilarTopics?id='+ each['id'], callback=self.index_page)

    @config(priority=2)
    def detail_page(self, response):
        for each in response.json['messages']:
            return each
阅读 2.9k
2 个回答

on_start 里面的地址是否已经抓过了,即使你改了代码,抓过的代码不会重复抓取。
解决方法读文档。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进