实时抓取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 更新数据库中断的解决方法
Jun 05 PHP
php中DOMDocument简单用法示例代码(XML创建、添加、删除、修改)
Dec 19 PHP
php的array_multisort()使用方法介绍
May 16 PHP
PHP中如何调用webservice的实例参考
Apr 25 PHP
php 生成自动创建文件夹并上传文件的示例代码
Mar 07 PHP
Win2003+apache+PHP+SqlServer2008 配置生产环境
Jul 29 PHP
php过滤html标记属性类用法实例
Sep 23 PHP
php表单提交与$_POST实例分析
Jan 26 PHP
PHP register_shutdown_function()函数的使用示例
Jun 23 PHP
php获取服务器操作系统相关信息的方法
Oct 08 PHP
PHP HTTP 认证实例详解
Nov 03 PHP
关于 Laravel Redis 多个进程同时取队列问题详解
Dec 25 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
利用 fsockopen() 函数开放端口扫描器的实例
2017/08/19 PHP
高性能WEB开发 flush让页面分块,逐步呈现 flush让页面分块,逐步呈现
2010/06/19 Javascript
js对象的构造和继承实现代码
2010/12/05 Javascript
jQuery的12招常用技巧分享
2011/08/08 Javascript
Javascript中常见的校验如域名、手机、邮箱等等
2014/01/02 Javascript
JS的事件绑定深入认识
2014/06/26 Javascript
js简单实现标签云效果实例
2015/08/06 Javascript
Jquery ajax 同步阻塞引起的UI线程阻塞问题
2015/11/17 Javascript
JS关闭窗口时产生的事件及用法示例
2016/08/20 Javascript
基于JS实现发送短信验证码后的倒计时功能(无视页面刷新,页面关闭不进行倒计时功能)
2016/09/02 Javascript
JavaScript每天必学之基础知识
2016/09/17 Javascript
vue Render中slots的使用的实例代码
2017/07/19 Javascript
JavaScript中call和apply方法的区别实例分析
2018/08/03 Javascript
jQuery表单元素过滤选择器用法实例分析
2019/02/20 jQuery
js 计数排序的实现示例(升级版)
2020/01/12 Javascript
Vant+postcss-pxtorem 实现浏览器适配功能
2021/02/05 Javascript
从零学python系列之浅谈pickle模块封装和拆封数据对象的方法
2014/05/23 Python
python处理PHP数组文本文件实例
2014/09/18 Python
Python3实现的Mysql数据库操作封装类
2018/06/06 Python
django使用django-apscheduler 实现定时任务的例子
2019/07/20 Python
python web框架中实现原生分页
2019/09/08 Python
使用python+poco+夜神模拟器进行自动化测试实例
2020/04/23 Python
python分布式爬虫中消息队列知识点详解
2020/11/26 Python
集团公司总经理岗位职责
2013/12/20 职场文书
幼儿教师研修感言
2014/02/12 职场文书
婚礼主持词开场白
2014/03/13 职场文书
毕业生求职自荐书范文
2014/03/27 职场文书
初中生旷课检讨书范文
2014/10/06 职场文书
公司离职证明标准格式
2014/11/18 职场文书
事业单位考察材料范文
2014/12/25 职场文书
采购员岗位职责范本
2015/04/07 职场文书
大客户经理岗位职责
2015/04/09 职场文书
承诺书范本大全
2015/05/04 职场文书
JavaScript+HTML实现学生信息管理系统
2021/04/20 Javascript
python not运算符的实例用法
2021/06/30 Python
避坑之 JavaScript 中的toFixed()和正则表达式
2022/04/19 Javascript