如果某些条款出现在首页的雅虎前十大“趋势主题”列表中,我希望收到通知。我创建了一个小脚本,使用file_get_contents('http://www.yahoo.com')解析首页;然后使用正则表达式解析它。这有效,但它很脆弱。如果他们稍微改变一下html怎么办?
我想以正确的方式执行此操作并获取与XML相同的信息。所以我研究了使用YQL。我找到了正确的查询:
http://query.yahooapis.com/v1/yql?q=select%20 *%20from%20timesense.trending%20where%20locale%3D'en-US“&安培;诊断=真
但是我不太明白如何使用它来提出我的请求,因为我收到了Oauth错误。
$request = "http://query.yahooapis.com/v1/yql?q=select%20*%20from%20timesense.trending%20where%20locale%3D'en-US'&diagnostics=true";
$session = curl_init($request);
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
$list = curl_exec($session);
echo $list;
给了我这个错误:
请提供有效的凭据。 OAuth的 oauth_problem = “OST_OAUTH_PARAMETER_ABSENT_ERROR”, realm =“yahooapis.com”请提供有效的证件。 OAuth的 oauth_problem = “OST_OAUTH_PARAMETER_ABSENT_ERROR”, 境界= “yahooapis.com”
现在我知道我需要创建一个访问密钥/ API密钥。我现在有一个。我只是不知道如何包含它。我看到的所有示例都是社交应用程序,我要求用户的登录名/密码。我想要的只是使用PHP来获取这10个XML列表。我该怎么做才能得到这个?我的下一步应该是什么?
答案 0 :(得分:0)
某些YQL表需要“双腿”OAuth,基本上意味着请求上的签名。我对这个答案的评论应该有助于解释所需的签名步骤: How do I get started with oauth for YQL for historical stock data?