首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获取嵌套的scrapy - selectors

如何获取嵌套的scrapy - selectors
EN

Stack Overflow用户
提问于 2020-08-16 10:02:59
回答 3查看 86关注 0票数 0

如何获取以下html的'img src‘的xpath

代码语言:javascript
复制
<a class=product-tile">
 <img src="image-file-here">
</a>
EN

回答 3

Stack Overflow用户

发布于 2020-08-16 11:59:37

听起来您想要提取src属性的值,如果是这样的话,这应该可以解决问题:

代码语言:javascript
复制
response.xpath('//a[@class="product-tile"]/img/@src').get()

Scrapy docs on selectors

票数 1
EN

Stack Overflow用户

发布于 2020-08-16 16:43:52

您可以使用CSS选择器,它更容易转换为XPATH底层。

尝尝这个

代码语言:javascript
复制
response.css('.product-tile ::attr(src)').get()
票数 0
EN

Stack Overflow用户

发布于 2020-08-16 17:30:32

如果你正在寻找XPTH,这里是你可以用来为第一次查找获取图像源的方法,使用extract_first()

代码语言:javascript
复制
response.xpath('//img/@src').extract_first()

如果您有复杂的html,则可以使用更具体的xpath。

代码语言:javascript
复制
response.xpath('//a[@class="product-tile"]/@src').extract_first()

如果要提取多个图像src链接,请使用extract()

代码语言:javascript
复制
response.xpath('//a[@class="product-tile"]/@src').extract()

在标记内可能有多个src链接,如下所示

代码语言:javascript
复制
<a class=product-tile">
 <img src="image-file-here">
 <a>
  <img src="image-file-here">
 </a>
 <img src="image-file-here">
 <img src="image-file-here">
</a>

因此在@src之前使用//

代码语言:javascript
复制
response.xpath('//a[@class="product-tile"]//@src').extract()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63432451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档