2

我有一个 Yahoo 管道从 Google 组获取 Atom 提要,我想对消息的全文进行一些处理(运行各种正则表达式来提取数据)。我可以使用这样的网址从 Google 获取纯文本的消息文本:

http://groups.google.com/group/(group_name)/msg/(message_id)?dmode=source&output=gplain

但是,我无法将它作为字符串值放入 Yahoo 管道。Fetch Page 拒绝非 HTML 页面。使用 html 表的 YQL 似乎可以工作,并将纯文本包装在 ap 元素中,我可以像这样提取其文本:

select * from html where url="..." and xpath="//p"

但是,如果消息文本包含 html 标记,YQL 将返回 HTML 子树而不是字符串。有没有办法将它展平回其 HTML 源代码?

4

1 回答 1

1

诀窍是删除“输出= gplain”并从前元素中获取内容。

select content from html 
where url="http://groups.google.com/group/haml/msg/0f78eda2f5ef802d?dmode=source" 
and xpath='//div[contains(@class,"maincontbox")]/pre'

我创建了一个带有 Google Group 和 Message ID 的管道作为输入来演示:

http://pipes.yahoo.com/pipes/pipe.info?_id=3d345e162405e7dbd47d73b95c21f102

于 2011-05-30T19:28:10.637 回答