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

  •   2009-08-01/08:17
  • <?
    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 #$lineCount\n";  
                    $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("\n\r", " ", "$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 #$lineCount\n";          
                    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]");
        }
        ?>



    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多