phpcms 采集教程
Phpcms网站管理系统目前最新版本为Phpcms v9,作为国内主流CMS系统之一,目前已有数万网站的应用规模。那么其自带的采集模块功能如何呢,来看看吧。
文章采集
Phpcms v9默认内置有文章、图片、下载3个内容模型,先来看最普通的文章采集。以采集新浪互联网频道,国内滚动新闻栏目为例http://roll.tech.sina.com.cn/internet_chinalist/index_1.shtml
1、进入后台,内容——内容发布管理——采集管理——添加采集点。(不同于Phpcms以往版本,采集管理在模块菜单内)
2、网址规则。采集项目名随便填,采集页面编码默认GBK,具体采集页面的时候可以通过查看其网页源代码。
网址采集,没有大的特色,通过查看所要采集页面的网址规则填写。分析目标页面得出是序列网址,且所要获取内容的网址都在<!-- 列表 begin -->和<!-- 列表 end -->两个标签之间。无其他干扰链接,所以就无需定义网址中必须包含和不得包含的字符了。如果目标网站配置了Base,那么也要配置好。
网址采集配置结束,但是如果目标网站列表页用js实现上下页,或者所要获取网址深度超过2级,用此自带采集就很难实现了。
3、内容规则。phpcms是用“[内容]”作为通配符,然后设置好开始结束的字符,再过滤不要的代码来实现内容的采集。分析目标页的title标签比较有规律,可以直接如图设置。
过滤格式为“要过滤的内容[|]替换值”,如果是删除的话就替换值留空。过滤规则是支持正则表达式,系统自带了几种比较常见的标签过滤正则,要比较灵活过滤的话对于新手来说有点难度,所以新手需要先熟悉下正则表达式。
作者规则,来源规则,时间规则依照规则去获取。小编尝试了一下固定值发现无法实现,就是把某一标签设为固定值,如把“来源”设定为http://www.sina.com.cn,可是采集结果来源标签为空。
内容规则,填好开始和结束标签,我们测试的目标页比较干净,所以只需过滤掉里面的超链接和一些无用标签即可。
内容分页规则,如果内容页有分页必须填写,此处文章都没有分页,小编会在后面的图片采集来介绍这个标签。
4、自定义规则,除了系统默认的几个标签外,你还可以自定义各种标签,规则是一样的,只是有一点要注意:规则英文名一定要填写,否则自定义标签无法保存。
5、高级配置,此次可以设置下载图片、图片水印、内容分页和导入顺序。其中注意,如果需要水印记得修改好自己网站的水印图片,水印存放路径:statics/images/water
6、规则设置好了,提交回到采集管理首页,可以先通过测试来看看各标签是否准确。
7、发布内容。如果都准确,先点击采集网址,会自动采集文章地址,并过滤重复url。然后会弹出采集网址完成的消息,点击其中的“采集文章内容”
采集自动进行,并显示采集进度。
采集完成后自动回到采集管理首页,点击内容发布,进入到已采集文章列表,勾选要发布的文章,或者直接点击底部的全部导入。
进入到发布方案选择界面,新建发布方案,选择一个发布栏目,本测试选择的是文章模块的栏目“国内”,在方案新建页面可以设置自动提取摘要、自动提取缩略 图、导入文章状态、标签与数据库对应关系。其中,导入文章状态只有一个“发布”,如果站长需要状态为待审核,要先修改对应栏目的工作流为一级审核。
标签与数据库对应关系中,把采集标签和数据库字段一一对应,如果有自定义标签找不到对应字段,需要修改模型增加字段,然后通过修改模板来显示,对技术要求比较高,不适合新手。另外系统自带几个处理函数,也挺实用的。
发布方案设置完成,自动开始导入刚才选择的文章,并且下一次导入时就无需再建方案了,直接选择已建好的方案即可。
文章采集、发布完成。看看效果:
后台内容管理页
内容页
下面我们来看看图片采集
图片采集
phpcms v9自带图片模型,对图片处理也有个组图模式,方便一些站长做图片网站或者设置图片展示方式。下面来体验下用自带采集程序来采集图片,以采集http://www.4493.com/mingxingxiezhen/页面的图片为例:
网站获取规则以及内容获取规则等都和文章采集一样,最重要的一点,phpcms v9的图片采集不能只采集图片地址,而是应该采集整个<img>标签,这样才能处理为组图。如本例:内容标签设置为
采集到的内容应该是这样的
还有个分页问题,目标站的分页如图所示:
网页代码为:
所以只需在内容分页规则处选择全部列出模式,然后填写分页标签开始和结束字符,系统就自动采集分页的内容了。
设置完规则后,采集网址,采集内容,发布内容。发布方案处要注意,小编几经尝试发现,要实现组图模式,必须内容字段和组图字段都要用上“处理为组图”函数。但是这样就无法获取第内容图片做缩略图了,所以最好自定义一个缩略图标签,直接获取一张内容图地址做缩略图。
设置好后发布。见采集效果:
栏目页
内容页
总结:细细体验下来,phpcms v9自带的采集功能还是比较全面的,满足基本的文章和图片采集。但是不够灵活,对一些高要求的站长来说还明显不足,而且门槛较高,官方对采集模块的说明和帮助文件又非常有限,不利于新手上手。
原文网址:http://www.3lian.com/edu/2012/03-18/23229_3.html
phpcms 采集教程的更多相关文章
- DeDeCMS织梦的采集教程
http://www.tuicool.com/articles/VziaEz dede 第一步.我们打开织梦后台点击采集——采集节点管理——增加新节点 第二步.新增节点-配置网址索引 填写要采集 ...
- phpcms采集地址中为相对路径解决方法
1.修改数据库v9_collection_node,增加两个字段replace_from,replace_to(varchar(200)) 2./phpcms/modules/collection/t ...
- PHPCMS V9教程之快速入门
这篇文章要为大家来介绍PHPCMS V9这个系统的一些基本知识,PHPCMS是基于面向对象的,严格的安装MVC开发模式开发的CMS系统,同时他还是一个非 常不错的PHP框架.下面我们一起看一下PHPC ...
- PHPCMS 插件开发教程及经验谈
虽说 PHPCMS 开源,但其它开发文档及参考资料实在少得可怜.进行二次开发时,自己还得慢慢去研究它的代码,实在让人郁闷. PHPCMS 的“Baibu/Google地图”实在有待改进,对于数据量比较 ...
- phpcms v9教程 联动搜索在房地产网站开发中的应用
开发简述:使用phpcms v9系统,修改源文件5个,创建模型:楼盘.出售.出租.中介.小区,增加联动菜单:楼盘,增加用户组:房产中介.实现功能:游客发布信息.会员申请中介.楼盘全方位展示.报名团购. ...
- 苹果CMSv10宝塔全自动定时采集教程
伙伴们在建立好自己的网站添加自定义资源库后,由于手动采集方式比较耗时间和精力更新也不够及时,是不是特别希望能有一个全自动定时采集方法来帮助网站增加视频资源解放自己的双手,那么现在就教大家如何用宝塔一步 ...
- DEDECMS之九 文章采集
到很多网友都为织梦(DEDECMS)的采集教程头疼,的确,官方出的教程太笼统了,什么都没说,换个网站你什么都做不了,这个教程是最详尽的教程,让你一看即会! 一.列表采集 第一步.我们打开织梦后台点击采 ...
- Phpcms v9系统类库与函数库调用方法
在分享了n多phpcms的教程后,cmsyou继续分享关于phpcms v9系统类库与函数库的调用方法. 系统类库位于系统的 /libs/functions目录下面,函数库文件名为*.func.php ...
- 简单java采集程序一
[目标任务]通过该网站采集全国的手机号码段至数据库表中 [完成过程] 1.初涉正则表达式,学会写简单的正则表达式 2.获取单个网页内容,学会java中基本的IO流 3.将获取数据插入mysql数据库表 ...
随机推荐
- no.4 抽奖测试
#-*-coding=gbk-*- import sys import random a=[] try: for x in range(1,20+1,1): #打印20人数编号 a.append(x) ...
- 深入理解abstract class和interface(转)
原文地址 深入理解abstract class和interface java提高篇(四)-----抽象类与接口
- 快钱支付与Sql Server的乐观锁和悲观锁
在实际的多用户并发访问的生产环境里边,我们经常要尽可能的保持数据的一致性.而其中最典型的例子就是我们从表里边读取数据,检查验证后对数据进行修改,然后写回到数据库中.在读取和写入的过程中,如果在多用户并 ...
- matlab中findstr,strfind,strcmp,strncmp区别与联系
在Matlab中,这几个函数区分如下: (以下默认S1和S2是字符串,同样也适用于cell细胞类型数据,也就是循环对cell中每个元素分别判断即可.) findstr(S1,S2):寻找是否有S1和S ...
- Spring MVC的工作流程
前端控制器(DispatcherServlet): (不需要我们开发)接收请求,响应结果,相当于转发器,中央处理器.减少了其它组件之间的耦合度. springmvc.xml是SpringMVC的一个全 ...
- Opencv Linux环境搭建(2)
继上次ubuntu10.04搭建失败之后,这次又换了一个系统. 拿出之前闲置的笔记本,安装了ubuntu12.04,按照这里的教程开始搞起来: http://www.linuxidc.com/Linu ...
- Unity导出的Xcode项目,iOS端管理摄像头的方法
Vuforia导出的工程中管理摄像头问题 在以前的篇幅中提到了unity端和iOS端的动态交互.现在出现了一个问题.因为设备上的摄像机是实例化过来的.并且是一个单例.unity虽然已经不再显示了.但是 ...
- sql server 2008 登录 4064 错误解决办法
出现这个错误是账户无法打开默认数据库导致的 修改一下该账户的默认打开数据库即可. 如果很不幸,你的sa帐号和windows身份验证默认都打开同一个数据库,那么无论换哪种方式登录都是一样没用的 如果你有 ...
- HoloLens开发手记 - Unity之Keyboard input 键盘输入
虽然HoloLens支持很多种输入方式,包括蓝牙键盘在内.但是大部分应用还是不能断定用户有物理键盘可以输入,所以虚拟键盘输入还是必须要提供的. Unity提供了一个TouchScreenKeyboar ...
- html的转码玉反转码
function HTMLEncode(html) { var temp = document.createElement ("div"); (temp.textContent ! ...