欢迎来到福编程网,本站提供各种互联网专业知识!

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

发布时间:2006-10-09 作者: 来源:转载

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, "

{

$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, "

"))

{

$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]

";

getYahooQuote("$symbols[$i]");

}

?>

相关推荐