怎么在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://pwwzsj.com/article/pppdp.html">http://pwwzsj.com/article/pppdp.html</a> </div> </div> <div class="contentr fr"> <h3>其他资讯</h3> <ul> <li> <a href="/article/doicshc.html">go语言调用h5 go语言调用http服务</a> </li><li> <a href="/article/doiceph.html">php循环插入数据库 php 循环</a> </li><li> <a href="/article/doicehd.html">帝国cms模板怎么制作 帝国cms模板文件放在哪里</a> </li><li> <a href="/article/doicidd.html">帝国cms版本对比 帝国cms好用吗</a> </li><li> <a href="/article/doicicc.html">python闭包函数 python 闭包函数</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> </div> <div class="copy container"> Copyright © 2017-2023 All Rights Reserved. 青羊区火炬信息咨询工作室 版权所有 <a href="http://www.beian.miit.gov.cn/" target="_blank" rel="nofollow">蜀ICP备2024060174号-3</a> [原创设计,独立版权。未经许可.不得拷贝或镜像]<br> <a href="http://www.kswsj.cn/" target="_blank">网站营销推广</a> | <a href="https://www.cdcxhl.com/pinpai.html" target="_blank">品牌网站设计</a> | <a href="http://www.cdweb.net/" target="_blank">自适应网站制作</a> | <a href="http://cdkjz.cn/wangzhan/pinpai/" target="_blank">品牌网站制作</a> | <a href="http://chengdu.cdxwcx.cn/" target="_blank">成都网站制作</a> | <a href="https://www.cdcxhl.com/cloud/" target="_blank">云服务器</a> | <a href="https://www.cdcxhl.com/weihu/abazhou.html" target="_blank">平武网站维护</a> | (平武网站制作QQ : 631063699 )</div> </footer> <!--在线咨询--> <div class="fot"> <ul> <li> <a href="mqqwpa://im/chat?chat_type=wpa&uin=532337155&version=1&src_type=web&web_src=oicqzone.com" target="_blank"> <img src="/Public/Home/img/fot1.png" alt="建站咨询"> <p>在线咨询</p> </a> </li> <li> <a href="tel:18980820575" target="_blank"> <img src="/Public/Home/img/fot2.png" alt="建站电话"> <p>拨打电话</p> </a> </li> </ul> </div> </body> </html> <script> $(".con img").each(function(){ var src = $(this).attr("src"); //获取图片地址 var str=new RegExp("http"); var result=str.test(src); if(result==false){ var url = "https://www.cdcxhl.com"+src; //绝对路径 $(this).attr("src",url); } }); window.onload=function(){ document.oncontextmenu=function(){ return false; } } </script>