火车采集器帮助文档 --> Web发布模块制作教程
火车采集器  帮助文档

本次我们使用DedeCMS5.7文章发布作为演示。我们首先下载安装好gbk版本的DEDE,然后下载数据包抓取工具fiddler。下载地址:http://www.fiddler2.com/fiddler2/ 。下载完后成打开fillder和采集器的Web发布模块工具,然后我们开始具体的开发过程。

首先我们打开dedecms后台,开始登录,登录成功后,我们可以看到fiddler中的数据:

从图中我们可以看到登录过程中提交的数据。我们按模块制作的流程,先设置登录地址后缀和登录地址来源页(如果你使用内置浏览器登录,登录地址设置这一步就可以不用设置了)。这个对应关系如下:

登录地址就是POST地址,来源页就是Refer那一行。因为发布模块一般是要针对一个系统的,所以对很多用户来说,要设置的只是域名的不同,我们本次要去掉域名部分和后台目录部分的网址,将剩下的网址做为地址后缀填写进去。当其他用户使用我们的模块时,只要填写域名地址带后台地址即可。填写的结果是:

第二步,我们复制RAW中的POST数据,填写登录POST数据,注意是选中Fiddler的那一行。

我们打开Web发布模块编辑器,在“网站自动登录”那一页,点击“粘贴抓包获取的数据”。

将我们刚才复制的数据放进去。

然后我们点击提取,会看到表单名和表单值已经自动填写好了。

我们可以知道,userid是用户名,pwd是密码,我们现在将这两个值替换成变量。我们点击修改表单项,删除掉旧数据,单击用户名,结果如下

我们保存好,再设置登录成功标识码,我们可以在fiddler返回的html代码中看到 “成功登录,正在转向管理管理主页”几个字样,我们可以在登录成功标识码中填写 “成功登录“四个字做为成功标识,当程序登录后发现有这几个字样,就会认为我们登录成功。现在的程序界面如下

登录过程我们最后再测试,现在我们设置内容发布参数。在dedecms中进入发布文章的页面,简单的填写一下必要的字段,然后提交数据。

在fiddler中看到如下结果,注意看圈住的几个地方,分别是post地址,以文本方式显示RAW代码,成功标识符。

按登录界面登录地址和来源页的设置方式,填写文章发布的地址和来源页,我们点击View In NotePad ,如图

复制-----------------------------114782935826962及以下的代码,到”内容发布参数“的”粘贴抓包获取的数据“中去。

点击提取后,我们再对表单值进行一些替换,如标签是mytitle替换成[标签:标题],内容mycontent替换成 [标签:内容]等。我们最后设置的结果如下:

我们现在要对发布时的页面进行分析,获取表单名所对应的实际内容。经过分析,我们得知typeid是栏目id,我们在发布文章时可能要指定不同的栏目的,所以我们要设置一个变量[分类ID]来代表栏目id,同时设置”获取栏目列表“。栏目列表页我们要获取的格式是栏目名称和栏目id,我们在来源页或是其它有栏目信息的网页的源代码中提取栏目信息。

Dedecms的来源页面就有栏目信息,源码如下:

我们填写的格式如下

分类的填写暂时就这样,我们在稍等再测试。经过我们的分析,pubdate这个表单是设置发布时间的,现在我们是需要使用服务器上的时间来发布的,我们需要通过”网页随机值获取“来获取这个时间并在发布时使用。这个时间我们是可以在填写文章内容的页面上得到的,我们先添加网页随机值

注意,因为时间每次都是不一样的,所以我们不要选”每次请求都使用第一次获取的随机值“

添加完的结果是

这里的网页随机值名为网页随机值1,我们同时要修改文章发表参数中的值。如下图。

保存好后,我们现在保存一下Web发布模块,在Web发布配置管理器中测试我们刚才做的模块。我们打开 WebPostManager.exe 。新建一个发布配置,注意网站根地址是域名加后台地址,我们前边有提到过。网站编码是gbk.如果我们使用的是utf8的dedecms,要选utf-8。

我们点击登录,提示登录成功。

这说明我们的登录部分是正确的,为了再次确认并获取登录失败的标识,我们改一下用户名或密码,获取一下所有的错误信息,并将其填写到模块中去。

这是修改后的模块

现在我们测试一下获取列表,点击”获取列表“,可以看到是成功了。

我们选一个栏目,点击”测试配置“

打开网站后台,结果正确。

到此,该模块已基本完成,后边的工作是做更多细节的修改。模块完成后,我们就可以用于实际发布过程中了。我们保存一下设置好的发布配置,就可以在其它的项目,如火车采集器中使用该发布配置了。火车采集器中的发布请查看 五.火车采集器采集实例中的发布部分。

上一篇   下一篇