Я только что попал в Scrapy, и я знаю, что это вопрос Noob, но Как мне добавить атрибут, чтобы указать конкретную ссылку на нумерацию страниц?
вот HTML-код с элементом, на который я нацеливаюсь.
`<div class="pagination">
<a rel="prev" href="/collections/all?page=1" class="fa fa-chevron-left prev pagination-icon"></a>
<ul>
<li class="pagination-icon">
<a href="/collections/all?page=1" title="">1</a>
</li>
<li class="pagination-icon pagination-icon--current">
2
</li>
<li class="pagination-icon">
<a href="/collections/all?page=3" title="">3</a>
</li>
<li class="pagination-icon">
<a href="/collections/all?page=4" title="">4</a>
</li>
<li class="pagination-icon pagination-icon--current">
…
</li>
<li class="pagination-icon">
<a href="/collections/all?page=50" title="">50</a>
</li>
</ul>
Мне нужно перейти по ссылке в этой строке
<a rel="next" href="/collections/all?page=3" class="fa fa-chevron-right next pagination-icon"></a>
Вот мой код Scrap
next_page = response.css('div.pagination a::attr(href)').extract_first()
if next_page is not None:
yield response.follow(next_page, callback=self.parse)
Что происходит, это егопереходим по этой ссылке вместо другой, потому что она является первой в классе «нумерация страниц»
<a rel="prev" href="/collections/all?page=1" class="fa fa-chevron-left prev pagination-icon"></a>
Я вижу два отличия между атрибутами двух ссылок, обе в классе «нумерация страниц»
- Атрибут Rel отличается, мне нужен атрибут со «следующим»
- Атрибут класса отличается, мне нужно «fa fa-chevron-right next pagination-icon»
Я почти уверен, что могу получить правильную ссылку, указав один из 2 атрибутов, перечисленных выше, в моем селекторе CSS.Я пытался использовать следующие CSS-селекторы, но ни один не работал.
- div.pagination a.fa fa-chevron-right next pagination-icon a :: attr (href) не работает
- a.fa fa-chevron-right следующий pagination-icon a :: attr (href) не работает
- a.fa fa-chevron-right next pagination-icon :: attr (href) не работает
Как мне достичь своей цели?Почему ни один из селекторов CSS, которые я пробовал, не работает?