Я пытаюсь собрать данные о спортсмене с этой веб-страницы: https://www.athletic.net/TrackAndField/Athlete.aspx?AID=7844096#!/L4. Мне удалось собрать имя спортсмена, но мне сложно собрать их школьное имя, используя тот же метод. Я знаю, что название школы содержится как текст внутри ссылки внутри блока, но возвращает только пустой массив.
Вот мой код:
import scrapy
class AthletesSpider(scrapy.Spider):
name = 'athletes'
allowed_domains = ['athletic.net']
start_urls = ['https://www.athletic.net/TrackAndField/Athlete.aspx?AID=7844096#!/L0']
def parse(self, response):
yield {
'athlete_name' : response.xpath("//h2/text()").extract_first(),
'school_name' : response.xpath("//h1/a/text()").extract_first()
}
Я что-то пропустил?
Добавить запятую в словаре
import scrapy
class AthletesSpider(scrapy.Spider):
name = 'athletes'
allowed_domains = ['athletic.net']
start_urls = ['https://www.athletic.net/TrackAndField/Athlete.aspx?AID=7844096#!/L0']
def parse(self, response):
yield {
'athlete_name' : response.xpath("//h2/text()").extract_first(), <--here
'school_name' : response.xpath("//h1/a/text()").extract_first()
}