Rumah > Soal Jawab > teks badan
Kadang-kadang maklumat dihantar terus ke fungsi seterusnya melalui pyspider, tetapi tidak perlu membuat URL baharu.
Sebagai contoh, bahagian tertentu maklumat pada halaman senarai perlu dihantar ke fungsi seterusnya, tetapi anda tidak mahu menghantarnya melalui URL senarai.
Saya terfikir untuk menggunakan kaedah send_message, dan juga menggunakan respons.save self.crawl (tulis URL tapak web yang lebih mudah untuk dirangkak)
Tetapi kedua-dua kaedah ini tidak bagus.
Ada kaedah yang bagus?
ringa_lee2017-05-18 11:02:39
Fungsi seterusnya telah selesai dilaksanakan dan ia tidak lagi wujud. Bagaimanakah anda menghantar maklumat kepada sesuatu yang tidak wujud?
曾经蜡笔没有小新2017-05-18 11:02:39
Ini tidak lebih daripada panggilan balik lompat, data yang telah keluar menghasilkan, tetapi anda masih perlu mengujinya.
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