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


Posted in PHP onOctober 09, 2006

<?
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]");
    }
    ?>

PHP 相关文章推荐
在服务端进行目录建立、删除,文件上传、删除的过程的php代码
Sep 10 PHP
PHP中通过语义URL防止网站被攻击的方法分享
Sep 08 PHP
PHP中集成PayPal标准支付的实现方法分享
Feb 06 PHP
php var_export与var_dump 输出的不同
Aug 09 PHP
浅析ThinkPHP中的pathinfo模式和URL重写
Jan 06 PHP
PHP实现自动识别Restful API的返回内容类型
Feb 07 PHP
php创建多级目录的方法
Mar 24 PHP
php结合md5实现的加密解密方法
Jan 25 PHP
php使用ffmpeg获取视频信息并截图的实现方法
May 03 PHP
PHP设计模式之适配器模式原理与用法分析
Apr 25 PHP
php屏蔽错误及提示的方法
May 10 PHP
ThinkPHP6.0如何利用自定义验证规则规范的实现登陆
Dec 16 PHP
php访问查询mysql数据的三种方法
Oct 09 #PHP
杏林同学录(一)
Oct 09 #PHP
杏林同学录(二)
Oct 09 #PHP
基于mysql的bbs设计(五)
Oct 09 #PHP
PHP+DBM的同学录程序(5)
Oct 09 #PHP
同时提取多条新闻中的文本一例
Oct 09 #PHP
PHP+DBM的同学录程序(4)
Oct 09 #PHP
You might like
php INI配置文件的解析实现分析
2011/01/04 PHP
destoon整合ucenter后注册页面不跳转的解决方法
2014/06/21 PHP
PHP实现发送邮件的方法(基于简单邮件发送类)
2015/12/17 PHP
PHP的AES加密算法完整实例
2016/07/20 PHP
PHP设计模式之外观模式(Facade)入门与应用详解
2019/12/13 PHP
脚本吧 - 幻宇工作室用到js,超强推荐expand.js
2006/12/23 Javascript
javascript parseInt 大改造
2009/09/27 Javascript
JS this作用域以及GET传输值过长的问题解决方法
2013/08/06 Javascript
jquery 延迟执行实例介绍
2013/08/20 Javascript
jquery $.trim()方法使用介绍
2014/05/21 Javascript
Javascript基础教程之数据类型 (字符串 String)
2015/01/18 Javascript
js实现搜索框关键字智能匹配代码
2020/03/26 Javascript
用NodeJS实现批量查询地理位置的经纬度接口
2016/08/16 NodeJs
微信小程序 时间格式化(util.formatTime(new Date))详解
2016/11/16 Javascript
js实现随机抽选效果、随机抽选红色球效果
2017/01/13 Javascript
Angular中使用$watch监听object属性值的变化(详解)
2017/04/24 Javascript
Angularjs验证用户输入的字符串是否为日期时间
2017/06/01 Javascript
浅谈小程序 setData学问多
2019/02/20 Javascript
NodeJS读取分析Nginx错误日志的方法
2019/05/14 NodeJs
[01:11:35]Liquid vs LGD 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
[38:32]完美世界DOTA2联赛循环赛 Forest vs DM 第二场 11.06
2020/11/06 DOTA
Python中实现参数类型检查的简单方法
2015/04/21 Python
详解Python命令行解析工具Argparse
2016/04/20 Python
pandas每次多Sheet写入文件的方法
2018/12/10 Python
pip指定python位置安装软件包的方法
2019/07/12 Python
pandas实现将日期转换成timestamp
2019/12/07 Python
Python 判断时间是否在时间区间内的实例
2020/05/16 Python
python实现网页录音效果
2020/10/26 Python
Python的collections模块真的很好用
2021/03/01 Python
sort命令的作用和用法
2012/11/04 面试题
应届毕业生就业自荐信
2013/10/26 职场文书
班主任对学生的评语
2014/04/26 职场文书
2014年无财产无子女离婚协议书范本
2014/10/09 职场文书
病人写给医生的感谢信
2015/01/23 职场文书
业务员年终工作总结2015
2015/05/28 职场文书
教你利用python实现企业微信发送消息
2021/05/23 Python