怎么在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://bzwzjz.com/article/pppdp.html">http://bzwzjz.com/article/pppdp.html</a> </div> </div> <div class="other"> <h3>其他资讯</h3> <ul> <li> <a href="/article/ihechc.html">docker如何指定IP地址</a> </li><li> <a href="/article/ihechh.html">php遍历文件乱码怎么办</a> </li><li> <a href="/article/ihecgs.html">Postgresql中EFFECTIVE_CACHE_SIZE指的是什么</a> </li><li> <a href="/article/ihescj.html">你在编程的时候浪费了多少时间?</a> </li><li> <a href="/article/ihecpj.html">实现mysql级联复制的方法示例</a> </li> </ul> </div> </div> <div class="footer2"> Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号 <br />友情链接: <a href="http://seo.cdkjz.cn/mobile/" target="_blank">自适应网站设计 </a><a href="http://chengdu.cdxwcx.cn/wangzhan/" target="_blank">手机网站制作 </a><a href="http://www.cqcxhl.com/service/foreigntrade.html" target="_blank">重庆外贸网站建设 </a><a href="http://www.cdxwcx.cn/" target="_blank">成都网站制作 </a><a href="http://www.kswcd.com/solution/" target="_blank">网站建设方案 </a><a href="http://chengdu.cdcxhl.cn/" target="_blank">成都网站设计 </a><a href="https://www.cdcxhl.com/xiangyingshi.html" target="_blank">成都响应式网站建设 </a><a href="http://www.cdxwcx.cn/" target="_blank">成都网站制作公司 </a><a href="http://www.dzwzjz.com/" target="_blank">达州网站设计 </a><a href="http://www.cdkjz.cn/" target="_blank">成都网站建设 </a><a href="https://www.cdcxhl.com/" target="_blank">网站设计 </a><a href="https://www.cdcxhl.com/shop.html" target="_blank">商城网站建设 </a><a href="http://www.cxjianzhan.com/mobile/" target="_blank">手机网站制作 </a><a href="http://m.cdcxhl.cn/dingzhi/" target="_blank">定制网站制作 </a><a href="http://m.cdcxhl.cn/H5/" target="_blank">成都响应式网站建设 </a><a href="http://www.cqwzjz.cn/" target="_blank">重庆网站建设 </a><a href="https://www.cdxwcx.com/" target="_blank">网站制作 </a><a href="http://seo.cdkjz.cn/wangzhan/" target="_blank">营销型网站建设 </a><a href="http://www.lzwzjz.cn/" target="_blank">泸州网站建设 </a><a href="https://www.cdxwcx.com/" target="_blank">成都网站制作 </a><a href="https://www.cdxwcx.com/wangzhan/" target="_blank">成都网站建设 </a><a href="http://www.bzwzjz.com/" target="_blank">专业网站设计 </a></div> </body> </html> <script src="/Public/Home/js/wow.min.js"></script> <script> if (!(/msie [6|7|8|9]/i.test(navigator.userAgent))) { new WOW().init(); }; </script> <div class="sidebar"> <ul> <li><a href="http://wpa.qq.com/msgrd?v=3&uin=244261566&site=www.bzwzjz.com&menu=yes" target="_blank"><img src="/Public/Home/images/right_qq.png" /></a></li> <li><a href="http://wpa.qq.com/msgrd?v=3&uin=1683211881&site=www.bzwzjz.com&menu=yes" target="_blank"><img src="/Public/Home/images/qq.png" /></a></li> <li class="tel"><a href="tel:028-86922220"><img src="/Public/Home/images/right_tel.png" /></a></li> <div class="wx"> <span class="weixin"><img src="/Public/Home/images/weixin.jpg"><br> 微信扫一扫在线咨询</span> </div> <li><a class="fx" href="#hero"><img src="/Public/Home/images/right_up.png" /></a></li> </ul> </div> <script type="text/javascript"> $(function () { $('.sidebar .fx').click(function () { $('html,body').animate({ scrollTop: '0px' }, 800); }); }); </script> <script type="text/javascript"> $(document).ready(function () { $("#fancybox-manual-b").click(function () { $.fancybox.open({ href: 'map.html', type: 'iframe', padding: 5 }); }) }); </script> <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>