Scrapy爬虫中的链接提取器LinkExtractor

本文介绍了Scrapy爬虫框架中的LinkExtractor组件及其使用方法。LinkExtractor用于从网页中提取符合特定规则的链接,文中详细解释了其参数配置,并提供了LxmlLinkExtractor的具体实例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天在编写Scrapy爬虫的时候接触到了LinkExtractor,遂学习了一下这个链接提取器。

Link Extractors 是那些目的仅仅是从网页(scrapy.http.Response 对象)中抽取最终将会被follow链接的对象。使用场景就是在一个网站中通过自定义规则提取到自己想要的那些网址。

Scrapy默认提供2种可用的 Link Extractor, 但你通过实现一个简单的接口创建自己定制的Link Extractor来满足需求。默认的LinkExtractor(也就是LxmlLinkExtractor)拥有比较方便的过滤选项,使用LXML的强大的HTMLParser实现。

使用的时候先从scrapy.linkextractors模块中引入:

from scrapy.linkextractors import LinkExtractor

LxmlLinkExtractor的使用:

class scrapy.contrib.linkextractors.lxmlhtml.LxmlLinkExtractor(allow=(), deny=(), allow_domains=(), deny_domains=(), deny_extensions=None, restrict_xpaths=(), tags=('a', 'area'), attrs=('href', ), canonicalize=True, unique=True, process_value=None)

相关参数的含义请参考文档:http://scrapy-chs.readthedocs.io/zh_CN/0.24/topics/link-extractors.html

主要参数:

allow: #满足括号中正则表达式的值会被提取,如果为空则全部匹配
allow_domains: #会被提取的链接的域名

与之相关的CrawlSpider以及Rule之后应该会一起整合写一个博客。

转载于:https://www.cnblogs.com/EdenChanIy/p/9398758.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值