我插入了以下命令
developer.yahoo.com/yql/console/
yql = select * from yahoo.finance.quotes where symbol in ("XAUUSD=X","XAGUSD=X")
但显示我不需要的所有数据。 XML Code Generated by Yahoo YQL和Json Code Generated by Yahoo YQL
我只想提出Ask,Bid,AskRealtime,BidRealtime,LastTradeRealtimeWithTime,LastTradeWithTime,LastTradePriceOnly。通过使用php会话,我想在同一页面中将抓取的数据插入到html table / div中。
不知道XML是否更容易提取数据或Json。这对我来说更容易获取字段的数据并对其进行会话并将其粘贴到html表中。
并且还希望在雅虎刷新数据时抓取的数据可以流式传输或自动刷新。
找到了这个链接
streamerapi.finance.yahoo.com
但不知道如何工作
请帮忙
我试过这个但没有打印
<script type='text/javascript'>
function forex(o){
var items = o.query.results.item;
var output = '';
var no_items=items.length;
for(var i=0;i<no_items;i++){
var Ask = items[i].Ask;
var AskRealtime = items[i].AskRealtime;
var BidRealtime = items[i].BidRealtime;
var LastTradeDate = items[i].LastTradeDate;
var LastTradePriceOnly = items[i].LastTradePriceOnly;
var LastTradeTime = items[i].LastTradeTime;
output += Ask + AskRealtime + BidRealtime + LastTradeDate + LastTradePriceOnly+ LastTradeTime;
+title + desc ;
}
// Place news stories in div tag
document.getElementById('results').innerHTML = output;
}
</head>
答案 0 :(得分:1)
查看json_decode(); !效果很好。
$x = json_decode($json_string); // gives back an array
$x = json_decode($json_string, true); // gives back an object
这件事给我带来了很多次......
答案 1 :(得分:0)
使用
http://api.jquery.com/jQuery.getJSON/
并把它放在计时器上。如果您记录响应(console.log),您将看到一个可以遍历的对象,以获得您想要的内容。
它也需要是一个有效的json,所以确保它是JSON Lint:
如果不是(我认为通常人们使用字符串为有效的jsons加前缀)那么你将不得不使用PHP来获取json(file_get_contents或CURL)并将响应切断,直到它是一个有效的json。