Очистка сайтов AJAX с помощью Scrapy - PullRequest
0 голосов
/ 25 октября 2018

Я ищу ответ на свой вопрос с последних двух дней, но теперь я расстроен.Я нашел много материала об этом, но ничто не помогло мне в достижении моей цели.Цель этого длинного абзаца состояла в том, чтобы предупредить вас, что, пожалуйста, не связывайте предыдущие ответы от stackoverflow для справки.Пожалуйста, предоставьте мне простое и аккуратное решение / ответ.Я хочу очистить данные игроков от https://www.premierleague.com/players, но при просмотре страницы я сталкиваюсь с ajax.Мой товарищ по команде попросил меня не использовать селен.Он попросил меня использовать Scrapy только для этой цели.Так что будьте добры, скажите мне вкратце, возможно ли это с помощью Scrapy или нет.И если возможно, то как.Я буду вам благодарен.

1 Ответ

0 голосов
/ 25 октября 2018

Легко

Откройте элемент проверки или Firebug

Перейдите на вкладку Сеть и нажмите XHR

И затем начните прокрутку вниз по странице

Вы увидите, что они отправляют запросы AJAX

Просто проверьте, на какой URL они отправляют запросы, и проверьте, какие данные формы отправляются по

headers = {
    'Referer': 'https://www.premierleague.com/players',
    'Origin': 'https://www.premierleague.com',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36',
    'DNT': '1',
    'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
}

params = {
    'pageSize': '30',
    'compSeasons': '210',
    'altIds': 'true',
    'page': '0',
    'type': 'player',
    'id': '-1',
    'compSeasonId': '210',
}

yield Request('https://footballapi.pulselive.com/football/players?%s' % (urllib.urlencode(params)), headers=headers)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...