首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Xpath和YQL的问题

Xpath和YQL的问题
EN

Stack Overflow用户
提问于 2012-07-17 22:00:41
回答 2查看 411关注 0票数 1

希望这件事足够简单。我试图使用YQL从不同的文字新闻博客的文章中提取“标题”图片。每一篇文章都有一个不同的“标题”图像,类名略有不同(没有id)。每个图像我需要共享一个基本的css类,“对齐”。如果我执行下面这样的查询,则不会得到任何返回。

代码语言:javascript
运行
复制
select * from html where url="urlofblog.com/" and xpath="//img[@class='alignright']"

但是,如果我将查询更改为将类与特定映像完全匹配

代码语言:javascript
运行
复制
select * from html where url="urlofblog.com/" and xpath="//img[@class='alignright size-full wp-image-3051']"

我把问题的图像拿回来了。看起来,YQL将"img[@class=“看作一个大字符串,而不是多个输入。问题是,当这些图像类被视为一个大字符串时,它们都不匹配。以下是我试图解决的问题:

  1. 我已经研究了YQL的“相似”参数。(找不到有用的东西)
  2. 尝试用xpath找到一种更好的方法(直到现在我还没有使用过)。那次搜索导致了我的here。到目前为止,我仍然无法使它开始工作。
  3. 我试过使用:不匹配(@class,'\balignright\b'),但我不认为YQL支持它。

有没有人知道是否有一种方法来抓取该基本css类的图像?我没有权限更改博客上的任何内容(比如插入I)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-18 18:19:33

在这里使用XPath contains()字符串函数是一个好方法。看起来,您正在尝试从Wordpress站点获取图像,该站点将根据需要向项目添加类。不要担心它是否从CSS类开始,仅仅是因为img在class属性中有CSS类。

代码语言:javascript
运行
复制
//img[contains(@class,'alignright')]
票数 1
EN

Stack Overflow用户

发布于 2012-07-17 23:04:18

您可以使用XPath字符串函数,例如starts-with

代码语言:javascript
运行
复制
//img[starts-with(@class, 'alignright')]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11531478

复制
相关文章

相似问题

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