Я только начинаю в Scrapy (и Python) и пытаюсь почистить сайты букмекеров, чтобы получить шансы. Учебное пособие, которое я смотрю, помогло мне пройти, но код, похоже, не работает.
Когда я запускаю без группы div all_markets, он корректно очищает рынки, но только первый в списке остальные элементы.
Когда я добавляю all_markets и l oop, он не работает вообще.
Что мне здесь не хватает? Спасибо, куча:)
Примечание. Соскобленный URL имеет статус stati c и, скорее всего, истек, но любое другое спортивное событие на сайте должно иметь такую же структуру.
import scrapy
class BookiesSpider(scrapy.Spider):
name = 'bookies'
start_urls = [
'https://www.sportsbet.com.au/betting/soccer/rest-of-europe/belarussian-premier-league/slutsk-v-vitebsk-5166193'
]
def parse(self, response):
all_markets = response.css('div.accordionItemDesktop_f1pa6f05')
for markets in all_markets:
market = markets.css('.headerContentTitle_feyu4ij .bold_f1au7gae::text').extract()
line_over = markets.css('.outcomeDetailsFirst_ft6k1ik .size12_fq5j3k2::text').extract()
line_under = markets.css('.outcomeDetailsLast_f15zyeyf .size12_fq5j3k2::text').extract()
odds_over = markets.css('.outcomeDetailsFirst_ft6k1ik .priceTextSize_frw9zm9::text').extract()
odds_under = markets.css('.outcomeDetailsLast_f15zyeyf .priceTextSize_frw9zm9::text').extract()
yield {
'market': market,
'line_over': line_over,
'line_under': line_under,
'odds_under': odds_under,
'odds_over': odds_over,
}