Scrapy页面中链接的顺序

伊万

LinkExtractor对于给定的域,我有一个简单的规则。像这样的东西:Rule(LinkExtractor(allow=('domain\.com/.+/\d+', )), callback='parse_page'),

我想要但无法弄清楚的是,要知道页面中的链接位于哪个位置。

例如,如果给定的域在页面上有5个与我的规则匹配的链接,我需要从上到下知道它们在HTML中的顺序。

我发现了很多有关提取顺序的问题,但是没有任何关于链接本身在HTML中的顺序的误解,或者我误解了一些东西

霸王龙

Scrapy使用lxml进行html解析。LinkExtractor用于root.iter()迭代。这条线更确切。

Lxml的文档说:

元素为此提供了一个树迭代器。它按文档顺序生成元素,即,如果您将树序列化为XML,则按它们的标签显示顺序:

因此对于html源:

<root>
  <child>Child 1</child>
  <child>Child 2</child>
  <another>Child 3</another>
</root>

它会产生:

>>> for element in root.iter(tag=etree.Element):
...     print("%s - %s" % (element.tag, element.text))
root - None
child - Child 1
child - Child 2
another - Child 3

您可以使用上面发布的lxml docs链接中提供的示例复制该过程。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Scrapy,从第二组链接中抓取页面

来自分类Dev

Scrapy XPath页面上的所有链接

来自分类Dev

HTML页面中的Divs顺序

来自分类Dev

如何在Scrapy中控制产量顺序

来自分类Dev

如何更改 Scrapy 蜘蛛中的 url 顺序?

来自分类Dev

Scrapy CrawlSpider没有关注特定页面上的链接

来自分类Dev

如何使用Scrapy抓取网站所有页面上的链接

来自分类Dev

在Wiki页面中链接用户

来自分类Dev

wordpress 页面中的条件链接

来自分类Dev

通用链接中的根页面

来自分类Dev

如何使用scrapy解析JS中的链接?

来自分类Dev

如何在 Scrapy 中抓取分页链接?

来自分类Dev

Scrapy - 从嵌套链接[/a] 等中清理文本[/p]

来自分类Dev

XCode中链接库的顺序

来自分类Dev

更改CodeBlocks中的链接器顺序

来自分类Dev

按顺序在链接列表中插入节点?

来自分类Dev

XCode中链接库的顺序

来自分类Dev

如何在Gatsby中反转页面顺序?

来自分类Dev

在Django中测试页面内容中的链接

来自分类Dev

抓取页面中的所有链接

来自分类Dev

如何更改页面中的所有链接?

来自分类Dev

如何在Spring MVC中链接页面

来自分类Dev

页面中的链接不起作用

来自分类Dev

JAVASCRIPT:如何获取页面中链接的URL?

来自分类Dev

在Wordpress中动态链接到页面

来自分类Dev

弹出时禁用父页面中的链接

来自分类Dev

WordPress:<a>中的页面链接不起作用

来自分类Dev

Symfony中的自动页面返回链接

来自分类Dev

剃刀页面:在链接中传递查询参数