DedeCMS采集教程:过滤替换的技巧


今天根据我个人织梦dedecms采集过程总结了一些经验,写出来供大家参考。
  1.采集去除链接
  
  [Copy to clipboard]CODE:
  
  ]*)>([^<]*)
  
  
  
  让field:title 标题突破30这个长度,修改代码的方法
  
  找到./include/inc_arcpart_viephp
  
  行291 :
  
  if($titlelen=="") $titlelen = 30;
  
  修改为
  
  if($titlelen=="") $titlelen = 60;
  
  就可以了,然后,你可以这样调用了
  
  
  
  
  
  [field:title function="cn_substr('@me',38)" /]
  
  
  
  
  
  把这个延伸一下:关于inc_arcpart_viephp
  
  function GetArcList($typeid=0,$row=10,$col=1,$titlelen=30,$infolen=160,
  
  $imgwidth=120,$imgheight=90,$listtype="all",$orderby="default",$keyword="",
  
  $innertext="",$tablewidth="100",$arcid=0,$idlist="")
  
  这里的参数都可以更改你实际需要的模板元素尺寸大小.
  
  2. 采集过虑中去掉链接保留文字的方法!
  
  柏老大的方法是<a ([^>]*)>([^<]*)</a>
  
  这样做会去掉<a hf.......>与</a>之间的字符!这样整个文章就少了部分字符,不完整了!
  
  后来我多次测试,总算找到了正确的使用方法!如下:
  
  <a([^>]*)>
  
  </a>
  
  做成两条采集规则就可以了!
  
  在实际使用中好像([^<]*)([^>]*)两条一起使用才行!
  
  3. 过滤div
  
  ]*)>
  
  
  
  
  
  过滤js
  
  ]*)>([^<]*)
  
  过滤未知变量字符
  
  固定(.*)固定
  
  4.dede万能过滤代码
  
  以下是常用的正则表达式标签
  
  <tbody(.*)>
  
  </tbody>
  
  <table(.*)>
  
  </table>
  
  <tr(.*)>
  
  </tr>
  
  <td(.*)>
  
  </td>
  
  <font(.*)>
  
  </font>
  
  <a(.*)>
  
  </a>
  
  <param(.*)>
  
  <embed(.*)</embed>
  
  <object(.*)</object>
  
  <iframe(.*)</iframe>
  
  <form(.*)</form>
  
  <input(.*)>
  
  <script(.*)</script>
  
  <style(.*)</style>
  
  <!(.*)>
  
  以下为不常用的正则表达式标签
  
  <div(.*)>
  
  </div>
  
  <center(.*)>
  
  </center>
  
  <p(.*)>
  
  </p>
  
  <span(.*)>
  
  </span>
  
  <img(.*)>

上一篇:织梦dedecms网站数据库出错如何修复

下一篇:织梦被挂了黑链的可能原因和排查清除办法


织梦采集规则
Copyright © 2002-2019 k262电脑网 www.k262.cn 皖ICP备2020016292号
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993 热门搜索 网站地图