怎么在PHP命令行模式中采集股票趋势信息-创新互联

怎么在PHP命令行模式中采集股票趋势信息?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

成都创新互联公司主营碌曲网站建设的网络公司,主营网站建设方案,成都app开发,碌曲h5微信小程序开发搭建,碌曲网站营销推广欢迎碌曲等地区企业咨询

主要函数只有一个类实现(stock.class.php):


 stockId = $stockId;
 }
 
 private function getUrl(){
  return "http://stockpage.10jqka.com.cn/" . $this -> stockId . "/";
 }
 
 private function getPage(){
  return file_get_contents($this -> getUrl());
 }
 
 //核心,通过正则匹配出 标签名,并将对应的方法的结果替换掉标签占位符
 public function getInfo($template){
  $html = $this -> getPage();
  if( preg_match_all("/\{([^\}]*)\}/", $template, $result) ){
  foreach($result[1] as $index => $fun){
   $template = str_replace($result[0][$index], $this -> $fun($html), $template);
  }
  }
  return mb_convert_encoding($template, "GBK", "UTF-8"); //Windows的命令提示符编码是GBK
 }
 
 private function match($pattern, $html, $itemIndex = 1){
  $pattern = '/' . str_replace('/', '\/', $pattern) . '/';
  if( preg_match($pattern, $html, $result) ){
  return $result[$itemIndex];
  }else{
  return "-";
  }
 }
 
 //趋势的规则都一样,合并
 private function qushiPattern($name){
  return '' . $name . ':
\s*([^<]*)
';  }    //支持的标签  private function name($html){   return $this -> match("([^\(<]*)\(", $html, 1);  }  private function score($html){   return $this -> match('<span class="analyze-num">(\d+(\.\d+)?)</span>', $html);  }  private function tips($html){   return $this -> match('<span class="analyze-tips">([^<]*)</span>', $html);  }  private function qushishort($html){   return $this -> match($this -> qushiPattern("短期趋势"), $html);  }  private function qushimiddle($html){   return $this -> match($this -> qushiPattern("中期趋势"), $html);  }  private function qushilong($html){   return $this -> match($this -> qushiPattern("长期趋势"), $html);  }  } ?></pre><p><strong>命令提示符中的调用方法如下(stock.php):</strong></p><pre><?php    if(count($argv) >= 2){  require("stock.class.php");  $stockId = $argv[1];  $stock = new StockClass($stockId);  $temp = $stockId;  $temp .= " {name}"; //名称  $temp .= " {score}"; //评分  $temp .= " {tips}"; //描述  $temp .= " {qushishort}"; //短期趋势  $temp .= " {qushimiddle}"; //中期趋势  $temp .= " {qushilong}"; //长期趋势  //$temp .= " {zidingyi}"; //自定义,直接在StockClass增加zidingyi方法即可  $temp .= "\n";  echo $stock -> getInfo($temp);  } ?></pre><p>直接使用<code> *\php.exe stock.php</code>股票代码即可实现调用,每次输入太长的,可以用批处理简化。</p><p>将下面的代码保存为 stock.cmd。</p><pre>@XXX\php.exe stock.php %1</pre><p><strong>运行结果:</strong></p><p><strong><img src="/upload/otherpic24/40098.png" alt="怎么在PHP命令行模式中采集股票趋势信息"></strong></p><p>这样就完成了单个股票趋势的采集,如果要采集所有的股票信息,可以保存为批处理文件(batch.cmd)</p><pre>@echo off call stock 000001 call stock 000002 call stock 000003 call stock 000004 call stock 000005 call stock 000006 call stock 000007 call stock 股票代码n...</pre><p>双击打开即可显示,如果想保存到文件,可以执行<code>batch.cmd > log.txt</code>,然后将结果复制到 Execl(或ET)即可进行更负责的分析。</p><p><img src="/upload/otherpic24/40099.png" alt="怎么在PHP命令行模式中采集股票趋势信息"></p><p>关于怎么在PHP命令行模式中采集股票趋势信息问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。</p> <br> 新闻名称:怎么在PHP命令行模式中采集股票趋势信息-创新互联 <br> 新闻来源:<a href="http://myzitong.com/article/pppdp.html">http://myzitong.com/article/pppdp.html</a> </div> </div> <div class="contentr fr"> <h3>其他资讯</h3> <ul> <li> <a href="/article/ddgpsih.html">如何设置是服务器更安全 服务器安全怎么设置</a> </li><li> <a href="/article/ddgpsjo.html">wc命令linux例子 wc linux详解</a> </li><li> <a href="/article/ddgpsip.html">linux添加到卷组命令 linux卷组扩容</a> </li><li> <a href="/article/ddgpsps.html">腾讯云的服务器能不能搭载windows 腾讯云服务器用什么系统好</a> </li><li> <a href="/article/ddgpsis.html">mysql小数点位怎么设 mysql小数用什么类型</a> </li> </ul> </div> </div> </div> <!--底部--> <footer> <div class="foot"> <div class="container"> <h1>梓潼大橙子建站您身边的网站制作服务商</h1> <div class="foot1"> <ul> <li> <dl><i class="iconfont"></i><b>地址ADDRESS</b></dl> <p>四川-成都青羊区太升南路288号<br> 锦天国际A座10楼 </p> </li> <li> <dl><i class="iconfont"></i><b>电话/TEL</b></dl> <p><a href="tel:02886922220" target="_blank">028 86922220</a> (工作日)<br> <a href="tel:18980820575" target="_blank">1898082 0575</a> ( 7x24 ) </p> </li> <li> <dl><i class="iconfont"></i><b>QQ咨询</b></dl> <p> 244261566 (售前)<br> 631063699 (售后) </p> </li> <li> <dl><i class="iconfont"></i><b>邮箱/E: mail</b></dl> <p> service@cdcxhl.com (业务)<br> hr@cdcxhl.com (求职) </p> </li> </ul> </div> <div class="link"> 友情链接: <a href="http://www.scarg.cn/" title="成都艾瑞格" target="_blank">成都艾瑞格</a>   <a href="https://www.cdcxhl.com/" title="网站建设" target="_blank">网站建设</a>   <a href="http://www.esincecn.com/" title="益鑫餐饮" target="_blank">益鑫餐饮</a>   <a href="http://m.cdcxhl.cn/seo/ " title="营销网站建设" target="_blank">营销网站建设</a>   <a href="http://www.cdhuace.com/" title="成都广告公司" target="_blank">成都广告公司</a>   <a href="http://www.dcwzsj.com/" title="德昌麦琪建站" target="_blank">德昌麦琪建站</a>   <a href="https://www.cdcxhl.com/h5.html" title="响应式网站" target="_blank">响应式网站</a>   <a href="http://www.scdzj.cn/" title="护栏打桩机" target="_blank">护栏打桩机</a>   <a href="http://www.hitbtccn.com/" title="草坪音箱" target="_blank">草坪音箱</a>   <a href="http://www.huilanmu.com/" title="边坡防护网" target="_blank">边坡防护网</a>    </div> </div> </div> <div class="copy container"> Copyright