实时抓取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 is_dir() 判断给定文件名是否是一个目录
May 10 PHP
PHP图片验证码制作实现分享(全)
May 10 PHP
PHP中IP地址与整型数字互相转换详解
Aug 20 PHP
php连接odbc数据源并保存与查询数据的方法
Dec 24 PHP
Yii实现的多级联动下拉菜单
Jul 13 PHP
php 伪造HTTP_REFERER页面URL来源的三种方法
Sep 22 PHP
Yii2 hasOne(), hasMany() 实现三表关联的方法(两种)
Feb 15 PHP
如何用PHP做到页面注册审核
Mar 02 PHP
php mysql_list_dbs()函数用法示例
Mar 29 PHP
PHP mysqli事务操作常用方法分析
Jul 22 PHP
PHP PDOStatement::bindValue讲解
Jan 30 PHP
php fread函数使用方法总结
May 28 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框架codeigniter中如何使用框架的session
2013/06/24 PHP
深入extjs与php参数交互的详解
2013/06/25 PHP
PHP遍历文件夹与文件类及处理类用法实例
2014/09/23 PHP
PHP简单读取xml文件的方法示例
2017/04/20 PHP
jquery imgareaselect 使用利用js与程序结合实现图片剪切
2009/07/30 Javascript
jquery全选checkBox功能实现代码(取消全选功能)
2013/12/10 Javascript
javascript调试过程中找不到哪里出错的可能原因
2013/12/16 Javascript
javascript中setAttribute()函数使用方法及兼容性
2015/07/19 Javascript
javascript单例模式的简单实现方法
2015/07/25 Javascript
基于js中的原型、继承的一些想法
2016/08/10 Javascript
微信小程序 缓存(本地缓存、异步缓存、同步缓存)详解
2017/01/17 Javascript
原生Javascript插件开发实践
2017/01/18 Javascript
前端开发必知的15个jQuery小技巧
2017/01/22 Javascript
ES6新数据结构Set与WeakSet用法分析
2017/03/31 Javascript
javaScript实现滚动条事件详解
2020/03/24 Javascript
基于jQuery实现定位导航位置效果
2017/11/15 jQuery
React Native日期时间选择组件的示例代码
2018/04/27 Javascript
Vue动态组件和异步组件原理详解
2019/05/06 Javascript
js 将多个对象合并成一个对象 assign方法的实现
2020/09/24 Javascript
[53:44]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma BO3 第一场 1月31日
2021/03/11 DOTA
python动态网页批量爬取
2016/02/14 Python
Python中序列的修改、散列与切片详解
2017/08/27 Python
解决Spyder中图片显示太小的问题
2018/04/27 Python
python selenium执行所有测试用例并生成报告的方法
2019/02/13 Python
Python opencv实现人眼/人脸识别以及实时打码处理
2019/04/29 Python
Python进程,多进程,获取进程id,给子进程传递参数操作示例
2019/10/11 Python
python之openpyxl模块的安装和基本用法(excel管理)
2021/02/03 Python
金宝贝童装官网:Gymboree
2016/08/31 全球购物
雅诗兰黛加拿大官网:Estee Lauder加拿大
2019/07/31 全球购物
消防战士优秀事迹材料
2014/02/13 职场文书
晚归检讨书
2014/02/19 职场文书
《找不到快乐的波斯猫》教学反思
2014/02/24 职场文书
学校个人对照检查材料
2014/08/26 职场文书
2014年终工作总结范本
2014/12/15 职场文书
怎样写观后感
2015/06/19 职场文书
goland 恢复已更改文件的操作
2021/04/28 Golang