Heim  >  Fragen und Antworten  >  Hauptteil

python – Wie übergibt Pyspider Informationen an die nächste Funktion, jedoch nicht über die URL?

Manchmal werden Informationen über Pyspider direkt an die nächste Funktion weitergeleitet, es ist jedoch nicht erforderlich, eine neue URL zu erstellen.

Zum Beispiel muss ein bestimmter Teil der Informationen auf einer Listenseite an die nächste Funktion übergeben werden, Sie möchten ihn jedoch nicht über die URL der Liste übergeben.

Ich habe darüber nachgedacht, die Methode send_message zu verwenden und auch Response.save von self.crawl (schreiben Sie die URL einer Website, die einfacher zu crawlen ist)
Aber keine dieser beiden Methoden ist besonders gut.

Gibt es eine gute Methode?

淡淡烟草味淡淡烟草味2735 Tage vor569

Antworte allen(2)Ich werde antworten

  • ringa_lee

    ringa_lee2017-05-18 11:02:39

    下一个函数已经执行结束了,它已经不存在了,你怎么传递传递信息给一个不存在的东西?

    Antwort
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-18 11:02:39

    无非跳转callback, 已出来的数据yield, 不过你还是测试一下.

    def detail(self, response):
        next_urls = [i.attr.href for i in response.doc('#fetch urls')]
        for url in next_urls:
            self.crawl(url, callback=self.list_page)
        for i in items = [
            # some result    
        ]
            yield i
    

    Antwort
    0
  • StornierenAntwort