1
我在scrapy
的幫助下颳了一些課程/課程,但是它似乎只產生最近的元素列表。
下面的代碼有問題:Scrapy只產生最後一個元素
def parse_course_list(self, response):
""" Scrape list of lessons for each course """
lessons = response.css('ul.lessons-list a')
for lesson in lessons:
title = lesson.xpath("text()").extract_first().strip()
link = lesson.xpath("@href").extract_first().strip()
url = response.urljoin(link)
item = response.meta['item']
item['Lesson'] = title
item['URL'] = link
yield scrapy.Request(url, \
callback=self.parse_lesson,
meta={'item': item} \
)
所以基本上我刮的教訓和產量的詳細信息頁面的請求。但是,parse_lesson
函數的教訓總是相同的。
我完全錯過了什麼嗎?
它進行得很順利,muito obrigado :)雖然我在一行中做了:'item = reponse.meta ['item']。copy()',這很好,不是嗎? – Jan
是的,我將聲明和分配分開,以便更容易理解,很高興解決;) –