Попытка очистить сайт букмекеров в Scrapy, и он не работает, как ожидалось - PullRequest
0 голосов
/ 11 апреля 2020

Я только начинаю в 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,
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...