Python Scrapy возвращается пустым - PullRequest
0 голосов
/ 30 марта 2020

Попытка сделать веб-скребок для этого сайта: https://stats.nba.com/search/team-game/#? Sort = GAME_DATE & dir = 1 & Season = 2019-20

здесь я хочу, чтобы скребок набрал go и потяните данные для каждой опубликованной игры NBA. Прямо сейчас я просто пытаюсь заставить это вытянуть название команды, играющей (первая колонка). Однако при попытке запустить паука я получаю пустой json файл.

Вот мой код:

import scrapy

class TeamsDataScraper(scrapy.Spider):
    name = "teamdata"

    #def start_requests(self):
    urls = ["http://stats.nba.com/search/team-game/#?sort=GAME_DATE&dir=1&Season=2019-20"]

        #for url in urls:
    #yield scrapy.Request(url=url, callback=self.parse)

    def parse(self, response):
        for team in response.xpath("//td[@class='player-name text']"):
            yield{
                'teamName': team.xpath(".//td[@class='player-name text']/a/text()").extract_first()
            }

1 Ответ

0 голосов
/ 30 марта 2020

Это потому, что ваш скребок вообще не имеет никакой точки входа

Вы должны иметь любой из ниже

  1. Список с именем start_urls (изменить urls на start_urls в вашем коде)
  2. start_requests метод, который yield один или несколько scrapy.Request объектов
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...