PHPCMS只能采集绝对路径的图片,不能采集相对路径的图片,解决方法
方法一
原因:PHPcms2008 sp3版本在采集过程中图片没有保存到本地,/spider/include/get_remotefiles.func.PHP 文件get_remotefileurls函数中的src 前的空格导致了图片在采集内容时采集不了。
if (!preg_match_all(“/<(?:a|img).+?(href| src)=(["|']?)([^ "'>]+.($ext))2/i”,$string,$matches))
把它改成
if (!preg_match_all(“/<(?:a|img).+?(href|src)=(["|']?)([^ "'>]+.($ext))2/i”,$matches))
方法二
首先,如果已经写好采集规则的朋友,自己先备份一下spider文件夹,这个文件夹地址在网站根目录下(一会我们还要用到里面的东东),没有写采集规则的朋友就不用备份了(建议备份,以备恢复);
第三步:将前期备份的spider文件里面的rules文件夹复制到新spider下,替换原文件(这一步也主要针对前期做好采集规则的朋友,因为rules文件夹下包含了你的采集规则);