我使用YQL来获取一些html页,以便从中读取信息。
从今天开始,我得到返回消息“不再支持html表。有关YQL使用条款,请参见https://policies.yahoo.com/us/en/yahoo/terms/product-atos/yql/index.htm”
控制台中的示例:https://developer.yahoo.com/yql/console/#h=select+ * + from + html + where + url%3D%22http%3A%2F%2Fwww.google.de%22
雅虎是否停止了这项服务?有人知道雅虎发布的公告吗?我想知道这仅仅是一个错误还是他们真的停止了这项服务?
所有文档仍然存在(html抓取):
https://developer.yahoo.com/yql/guide/yql-select-xpath.html,
https://developer.yahoo.com/yql/
前一阵子,我在Yahoo的YQL论坛上发帖,现在这个已经不存在了(或者至少我找不到)。您如何联系Yahoo以了解这项服务是否真的停止了?
最好的祝福,
hebr3
最佳答案
截至2017年6月8日,雅虎确实确实停止了对html库的支持(根据我的错误日志)。似乎还没有任何官方公告。
幸运的是,这里有一个YQL社区库,可以在不对您的代码库进行少许更改的情况下代替官方html库使用。请参见htmlstring table in the YQL Console。
将您的YQL查询更改为引用htmltable而不是html,并将社区环境包括在REST查询中。例如:
/*/ Old code /*/
var site = "http://www.test.com/foo.html";
var yql = "select * from html where url='" + site + "' AND xpath='//div'";
var resturl = "https://query.yahooapis.com/v1/public/yql?q="
+ encodeURIComponent(yql) + "&format=json";
/*/ New code /*/
var site = "http://www.test.com/foo.html";
var yql = "select * from htmlstring where url='" + site + "' AND xpath='//div'";
var resturl = "https://query.yahooapis.com/v1/public/yql?q="
+ encodeURIComponent(yql) + "&format=json"
+ "&env=store%3A%2F%2Fdatatables.org%2Falltableswithkeys";
关于yql - YQL:不再支持html表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44431212/