如何在YQL查询中使用多个xpath选择器

Uma*_*nsa 5 php xpath yql

嘿,我想用YQL从我的博客中搜集一些数据:

SELECT * FROM html WHERE url="http://site.com/blog" AND xpath="//div[@class='post']"
Run Code Online (Sandbox Code Playgroud)

如何在查询中使用不同的xpath位?我可以这样做:

SELECT * FROM html WHERE url="http://site.com/blog" AND xpath="//div[@class='post']" AND xpath ="//div[@class='title']"
Run Code Online (Sandbox Code Playgroud)

假设我想获得帖子和标题?我想我可以接受所有的HTML,但我宁愿只接受我需要的东西,因为速度是一个问题.

一旦我有了HTML,我想从标记中提取文本,是否可以使用PHP正则表达式?

我也理解你可以使用CSS语法,如果你有使用YQL的经验并且可以指导我如何编写类似的查询到上面的那个但是在CSS而不是XPATH我会很感激!

谢谢.

spi*_*ier 11

关于CSS:

请参阅YQL网站本身.搜索谷歌的YQL和CSS(我只能在这里发布一个链接,第二个更有用.)

他们在那里的例子实际上已经不再有效,但你可以尝试这个例子,它从stackoverflow的首页上抓取问题.

YQL示例

使用一个XPATH进行多次选择:

您可以使用xpath语法直接执行此操作.例如

SELECT * FROM html WHERE url="www.asscompact.de" and xpath="//head/meta[@name='title']|//head/meta[@name='description']|//head/meta[@name='keywords']"
Run Code Online (Sandbox Code Playgroud)