【问题标题】:YQL - CDATA ]]> error when selecting data using YQLYQL - CDATA ]]> 使用 YQL 选择数据时出错
【发布时间】:2011-05-01 20:22:57
【问题描述】:

尝试使用 YQL 从 totalfilm.com 抓取数据,但出现一个奇怪的错误:

“字符序列“]]>”不得出现在内容中,除非用于标记 CDATA 部分的结尾。”

select * from html where url="www.totalfilm.com"

link

【问题讨论】:

  • 您的查询对我来说很好,而且错误非常不言自明:您想回答什么问题?
  • 抱歉,问题是如何使用 YQL 从 totalfilm.com 抓取数据?
  • 啊哈,现在它给出了与问题相同的错误。除非您愿意自己整理 HTML(在 YQL 或其他地方)或让 Total Film 来修复它,否则可能没有快速的答案。
  • 我现在用php和一个html解析库来做

标签: web-scraping yahoo yql


【解决方案1】:

正如评论的那样,为了让损坏的 XHTML 按您的意愿工作,可能需要进行一些捏造。

这是一个快速的,非常粗略的 open data table,它会在应用之前从 (X)HTML 页面(以及 Tidys)中删除任何 <![CDATA[]]>一个可选的 XPath 表达式,就像在普通的 html 表中一样,用于获取您需要的数据。

你可以像这样使用它:

use "https://github.com/salathe/yql-tables/raw/examples/data/nocdata.xml" as html;
select * from html where url="www.totalfilm.com"

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 1970-01-01
    • 2012-03-05
    • 2011-07-30
    • 2012-06-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多