Python Scrapy爬取cryptorank.io时提取同标签下所有区块链名称
Scrapy CSS选择器仅返回单条匹配结果问题记录
操作场景
尝试使用Python Scrapy框架爬取页面https://cryptorank.io/fundraising-platforms的区块链相关信息,在Scrapy shell中执行初始调试代码:
fetch('https://cryptorank.io/fundraising-platforms') # 注:页面样式类名已更新,原类名.bZTNAB已变更为.iyBlmE response.css('.iyBlmE').get()
执行后返回包含多组区块链链接的td节点内容,经元素检查确认,区块链名称存储在对应节点下a标签的title属性中。
问题表现
执行以下选择器代码时,仅返回第一个匹配值'Solana',无法获取匹配范围内的全部区块链名称:
response.css(".iyBlmE a::attr(title)").get()
可行解决方法
将选择器的调用方法从.get()替换为.getall(),即可返回区块链列所有匹配条目的列表,修正后代码:
response.css(".iyBlmE a::attr(title)").getall()
参考材料
- SelectorGadget扩展选点截图
- 页面元素检查截图
- 命令运行截图
内容的提问来源于stack exchange,提问作者Rafael Meireles
相关产品推荐
相关产品推荐

