抓取YAHOO股票报价的类


Posted in PHP onMay 15, 2009
<? 
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中::、-&amp;gt;、self、$this几种操作符的区别介绍
Apr 24 PHP
php echo, print, print_r, sprintf, var_dump, var_expor的使用区别
Jun 20 PHP
ThinkPHP的截取字符串函数无法显示省略号的解决方法
Jun 25 PHP
phpmailer发送邮件之后,返回收件人是否阅读了邮件的方法
Jul 19 PHP
ecshop后台编辑器替换成ueditor编辑器
Mar 03 PHP
php根据某字段对多维数组进行排序的方法
Mar 07 PHP
php和editplus正则表达式去除空白行
Apr 17 PHP
PHP获取二维数组中某一列的值集合
Dec 25 PHP
什么是OneThink oneThink后台添加插件步骤
Apr 13 PHP
Yii2.0多文件上传实例说明
Jul 24 PHP
Laravel如何自定义command命令浅析
Mar 23 PHP
php桥接模式应用案例分析
Oct 23 PHP
PHP 采集心得技巧
May 15 #PHP
DISCUZ 论坛管理员密码忘记的解决方法
May 14 #PHP
PHP获取当前文件所在目录 getcwd()函数
May 13 #PHP
php 购物车实例(申精)
May 11 #PHP
PHP 编写的 25个游戏脚本
May 11 #PHP
PHPMyAdmin 快速配置方法
May 11 #PHP
PHP 在线翻译函数代码
May 07 #PHP
You might like
Php连接及读取和写入mysql数据库的常用代码
2014/08/11 PHP
Symfony学习十分钟入门经典教程
2016/02/03 PHP
PHP缩略图生成和图片水印制作
2017/01/07 PHP
Javascript客户端脚本的设计和应用
2006/08/21 Javascript
JQuery 返回布尔值Is()条件判断方法代码
2012/05/14 Javascript
javascript判断移动端访问设备并解析对应CSS的方法
2015/02/05 Javascript
jquery实现的简单二级菜单效果代码
2015/09/22 Javascript
jquery 表单验证之通过 class验证表单不为空
2015/11/02 Javascript
12个非常实用的JavaScript小技巧【推荐】
2016/05/18 Javascript
AngularJS 视图详解及示例代码
2016/08/17 Javascript
jquery Banner轮播选项卡
2016/12/26 Javascript
js实现打地鼠小游戏
2017/02/13 Javascript
easy ui datagrid 从编辑框中获取值的方法
2017/02/22 Javascript
Bootstrap导航中表单简单实现代码
2017/03/06 Javascript
node安装--linux下的快速安装教程
2017/03/21 Javascript
node.js连接MongoDB数据库的2种方法教程
2017/05/17 Javascript
Vue-cli proxyTable 解决开发环境的跨域问题详解
2017/05/18 Javascript
NodeJS实现微信公众号关注后自动回复功能
2017/05/31 NodeJs
Angularjs中数据绑定的实例详解
2017/08/25 Javascript
vue中的循环对象属性和属性值用法
2020/09/04 Javascript
[01:52]PWL S2开团时刻第四期——DOTA2成语故事
2020/12/03 DOTA
python如何实现excel数据添加到mongodb
2015/07/30 Python
Python实现按学生年龄排序的实际问题详解
2017/08/29 Python
python ipset管理 增删白名单的方法
2019/01/14 Python
Python logging设置和logger解析
2019/08/28 Python
Selenium结合BeautifulSoup4编写简单的python爬虫
2020/11/06 Python
HTML5实现Notification API桌面通知功能
2016/03/02 HTML / CSS
ASOS比利时:英国线上零售商及自有品牌
2018/07/29 全球购物
第二层交换机和路由器的区别?第三层交换机和路由器的区别?
2013/05/23 面试题
学生会竞选演讲稿
2014/04/24 职场文书
人民调解员先进事迹材料
2014/05/08 职场文书
高中升旗仪式演讲稿
2014/09/09 职场文书
离职报告范文
2014/11/04 职场文书
拖欠货款起诉状
2015/05/20 职场文书
2016年暑期社会实践活动总结报告
2016/04/06 职场文书
应届生们该怎么书写求职信?
2019/07/05 职场文书