0
그것은 매우 사소한 질문이지만 나는 Scrapy를 처음 사용합니다. 내 문제에 대한 해결책을 찾으려고 노력했지만이 코드가 무엇이 잘못되었는지 알 수 없습니다.Scrapy에서 div를 반복하는 방법은 무엇입니까?
나의 목표는 주어진 웹 사이트에서 오페라 쇼를 모두 스크랩하는 것입니다. 모든 쇼의 데이터는 클래스 "행 - 유체 행 성능"이있는 하나의 div 안에 있습니다. 나는 그것들을 되찾기 위해 그들을 반복하려고 노력하고 있지만 그것은 작동하지 않는다. 그것은 각 반복에서 첫 번째 div의 내용을 제공합니다 (나는 다른 항목 대신에 동일한 쇼를 19x 번 얻고 있습니다).
어떤 조언을 주셔서 감사합니다!
import scrapy
from ..items import ShowItem
class OperaSpider(scrapy.Spider):
name = "opera"
allowed_domains = ["http://www.opera.krakow.pl"]
start_urls = [
"http://www.opera.krakow.pl/pl/repertuar/na-afiszu/listopad"
]
def parse(self, response):
divs = response.xpath('//div[@class="row-fluid row-performance "]')
for div in divs:
item= ShowItem()
item['title'] = div.xpath('//h2[@class="item-title"]/a/text()').extract()
item['time'] = div.xpath('//div[@class="item-time vertical-center"]/div[@class="vcentered"]/text()').extract()
item['date'] = div.xpath('//div[@class="item-date vertical-center"]/div[@class="vcentered"]/text()').extract()
yield item
".//"worked, thanks :) – Grevioos
정말 도움이된다면 정답으로 표시해주세요. 감사. –