【问题标题】:pagination - xpath for a crawler in python分页 - python 中爬虫的 xpath
【发布时间】:2017-09-11 05:03:51
【问题描述】:

我实际上正在使用 python 中的 scrapy 开发一个爬虫,我几乎完成了,我只是有一个小问题。 该网站使用这样的分页:

<div class="pagination toolbarbloc">
            <ul>
                    <li class="active"><span>1</span></li>
                    <li><a href="...">2</a></li>
                    <li><a href="...">3</a></li>
                    <li><a href="...">4</a></li>
                    <li><a href="...">5</a></li>
                    <li><a class="end" href="...">>></li>
            </ul>
        </div>

所以我尝试在 li 之后使用“active”类捕捉应答器 li 的“href”。

我尝试这样的事情:

next_page_url_xpath = '//div[@class="pagination toolbarbloc"]/ul/following-sibling::li[@class="active"]/a/@href'

但它不起作用:IndexError: list index out of range

我只是从 xpath 开始,我知道它很简单,但是在阅读了很多文档之后,我没有成功。

非常感谢帮助我的人!

【问题讨论】:

  • '//div[class="pagination toolbarbloc"]//a[@href]/@href' 我认为这个会很好用。选择a的href属性,其中a具有href属性并且是div的子节点,类为“pagination toolbarbloc”

标签: python xpath scrapy web-crawler


【解决方案1】:

试试下面的表达式:

//div[@class="pagination toolbarbloc"]/ul/li[@class="active"]/following-sibling::li/a/@href

请注意,您在[class="pagination toolbarbloc"] 中错过了@,并且li 不是ul 的兄弟

【讨论】:

  • 谢谢我编辑!我记得我尝试了 ure 方法,但它没有用,但现在没关系!非常感谢
最近更新 更多