简单生活 发表于 2015-2-4 00:05:30

PHP编程:及时抓取YAHOO股票报价的代码

多去关于PHP的网站,尤其有很多经典的文章,多读读这些文章显然是有好处的。   <?
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]");
    }
    ?>

我假设你目前已经可以完成一个静态页面了,当然,做的好看难看是另外一说,皮皮我的第一个网页也没好看到哪去,但是“孩子”再丑,咱们做“爹妈”的也不能嫌弃不是?这毕竟是咱的成果。

分手快乐 发表于 2015-2-4 08:46:55

有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。

莫相离 发表于 2015-2-8 18:10:22

其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。

灵魂腐蚀 发表于 2015-2-20 01:57:15

微软最近出的新字体“微软雅黑”,虽然是挺漂亮的,不过firefox支持的不是很好,所以能少用还是少用的好。

小妖女 发表于 2015-3-6 16:02:09

爱上php,他也会爱上你。

只想知道 发表于 2015-3-13 04:08:25

为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。

愤怒的大鸟 发表于 2015-3-13 04:08:29

如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,

再现理想 发表于 2015-3-13 04:08:29

找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。

海妖 发表于 2015-3-13 04:08:29

这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。

小女巫 发表于 2015-3-13 05:09:33

要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。

冷月葬花魂 发表于 2015-3-30 07:11:00

多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。

第二个灵魂 发表于 2015-4-3 05:15:25

多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。

兰色精灵 发表于 2015-4-9 22:24:52

本文当是我的笔记啦,遇到的问题随时填充

变相怪杰 发表于 2015-4-13 09:19:02

装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。

深爱那片海 发表于 2015-4-16 10:23:41

说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。

因胸联盟 发表于 2015-4-25 02:18:29

学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql

若天明 发表于 2015-5-2 20:16:59

装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。

简单生活 发表于 2015-5-4 13:34:40

写的比较杂,因为我也是个新手,不当至于大家多多指正。

若相依 发表于 2015-5-10 01:08:20

作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
页: [1]
查看完整版本: PHP编程:及时抓取YAHOO股票报价的代码