• 技术文章 >后端开发 >php教程

    抓取YAHOO股票报价的类_php技巧

    2016-05-17 09:32:42原创248
    复制代码 代码如下:

    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, "{
    $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, "
    "))
    {
    $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]
    ";
    getYahooQuote("$symbols[$i]");
    }
    ?>

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:YAHOO 股票
    上一篇:PHP memcache扩展的三种安装方法_php技巧 下一篇:PHP 身份证号验证函数_php技巧
    PHP编程就业班

    相关文章推荐

    • HTML英文单词汇总(PHP新手收藏)• 我28了,还能不能学PHP?• CSS英文单词汇总(PHP新手收藏)• PHP英文单词汇总(PHP新手收藏)• ThinkPHP3.2 加载过程(2)

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网