您的位置:首页技术文章

实时抓取YAHOO股票报价的代码

【字号: 日期:2023-11-06 10:18:55浏览:82作者:馨心
<? function getYahooQuote($stockSymbol = "CCR") { if (!$targetURL) $targetURL = "http://finance.yahoo.com/q?s=$stockSymbol&d=t"//设定要抓取的URL目标;;;;;$fd = fopen("$targetURL", "r"); $stopExtract = 0;;;$startExtract = 0;;;while (!feof($fd));;{ ;;;;$buffer = fgets($fd, 4096); //echo trim($buffer)."n";;;;;;;if (strstr($buffer, "rowspan=3")) ;;;;{ //echo "extract started at line #$lineCountn";;;$startExtract = 1;;;;;;;};;;;;;;;;if ($startExtract && !$stopExtract);;;;;;;;;{ ;if (strstr($buffer, "<a"));;{ ;;;;$startPos = strrpos($buffer, "<"); ;;;;$buffer = substr($buffer, $startPos); } //$text = trim(strip_tags($buffer)); //echo trim($buffer)."n";;;;;;;;$buffer = str_replace("nr", " ", "$buffer"); if (strstr($buffer, "http://ichart.yahoo.com/v?s=$stockSymbol"));;{ ;;;;//echo "ichart found!";;;$stopExtract = 1;;;} $capturedHTML .= $buffer;;;;;;;;;;;} ;;;;if ($startExtract && strstr($buffer, "<br>")) ;;;;{ ;$stopExtract = 1;;;//echo "extract stopped at line #$lineCountn";;;echo $capturedHTML; break; ;;;;} ;;;;$lineCount++; } fclose($fd); ;;;;} ;;;;;;;;;//以下为抓取的一个例子 ;;;;$symbols = array('CCR', 'IIXL','SAPE','WBVN' ); ;;;;$symbolCount = count($symbols); ;;;;for ($i=0; $i< $symbolCount; $i++) ;;;;{ echo "$symbols[$i]<br>"getYahooQuote("$symbols[$i]"); ;;;;} ;;;;?>
标签: PHP