如果它们是相对链接,如何使用lxml的start-with()获取URL列表?

时间:2014-01-10 10:00:01

标签: python lxml

我正在制作包含“page.php”的网址列表?我解析所有链接然后循环它们还是有更好的方法?

网址如下所示:

 <a href="../path/page.php?something=somewhere&yes=no">

我试过这个:

resumes = doc.xpath('//a[starts-with(@href, "../path/page.php"]/text()')

这是正确的还是我应该使用带有starts-with()的绝对URL?

1 个答案:

答案 0 :(得分:0)

如果您想要包含page.php的所有链接,我会这样做。

links = doc.findall('.//a') # Finds all links
resume = [res for res in links if 'page.php' in res.text_content()]

首先,我获取页面上的所有链接,然后列出其中包含page.php的所有链接。

这是未经测试的(我没有你所有的代码所以我不能像往常一样快速测试它)但是仍然可以工作。