Как выполнить нумерацию страниц с помощью скрапа - PullRequest
0 голосов
/ 01 июля 2018

У меня есть этот целевой URL:

<nav>
<ul class="pagination pagination-lg">
<li class="active" itemprop="pageStart">
<a href="moto.html">1</a></li>
<li itemprop="pageEnd">
<a href="moto-2.html">2</a></li>
<li>
<a href="moto-2.html" aria-label="Next" class="xh-highlight">
    <span aria-hidden="true">»</span></a>
</li><
</ul>
</nav>

но я не могу выбрать ссылку на следующую страницу, я пытаюсь:

    next_page_url = response.xpath('./div/div/div[1]/nav/ul/li[3]/a').extract_first()

также с

response.css('[class="xh-highlight"]').extract()

Я получаю только как результат [] на оболочке

другой момент: я установил пользовательский агент как google chrome, потому что я читал здесь о другом пользователе с проблемами на акцентах, но не решаю мою проблему

1 Ответ

0 голосов
/ 02 июля 2018

Хочу предупредить вас, что Scrapy не может очистить сайт, созданный с помощью JavaScript. Подумайте об использовании веб-драйвера, такого как Selenuim, с копией, если страница отображается в javascript.

Я бы порекомендовал вам перейти в scrapy shell и набрать view (ответ). Если вы видите пустую страницу, то страница отображается в javascript.

Это то, как вы получаете URL-адреса из xpath, но я сомневаюсь, что это изменит то, что вы не видите объекта

next_page_url = response.xpath('nav/ul/li[3]/a/text()')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...