1

Don't understand how to paginate for kimono scraping without next> in navigation i.e. for paging structure:

<div class="pages" style="clear: both;">
    <span>1</span>    
    <a href="/page=2">2</a>
    <a href="/page=3">3</a>
    <a href="/page=4">4</a>
</div>

xpath for css selector gives results only for page2:

div.pages > a

I want to have one API (i.e. don't want to generate URL list with additional API)

4

2 回答 2

1

你有两个选择。

(一)尝试div.pages > span + a。此“下一页”选择器将始终选择“下一页”并在最后一页停止。示例标记显示当前选择的页面是 aspan而下一页链接是相邻的a。您可以使用相邻的兄弟选择器+选择. 注意:您没有指向目标站点的链接,因此不能保证这会起作用,但根据您的示例标记,它会起作用。aspan

(b) 简单地手动输入此 API 要抓取的 URL 列表。看起来您想要的列表是:

http://www.thissiteurl.com/page=1
http://www.thissiteurl.com/page=2
http://www.thissiteurl.com/page=3
...
于 2015-11-02T16:01:02.257 回答
0

您将在下面找到XPathCSS 选择器来选择所有a用于分页的元素:

  • XPath//descendant::*[1]/a[contains(@href, 'page=')]

  • CSS 选择器div[id=results] div[class~=pull-right] a

div[class~=pull-right]表示您要选择属性等于的所有divs内容。classpull-right

我不太喜欢 CSS 选择器,但和服由于某种原因不允许a[href]选择类型。理想情况下,你会使用这样的东西:

  • 更好的 CSS 选择器div[id=results] a[href=~page]
于 2015-11-05T15:48:50.743 回答