教程:优采云 采集器/DedeCMS文章模块

优采云 发布时间: 2022-11-24 21:39

  教程:优采云

采集器/DedeCMS文章模块

  优采云

采集器

| 安装 | 主程序 | 子程序 | 应用扩展 | 模块开发 | 常问问题

  首先安装 DedeCms 5.1。本例测试的DedeCMS网站地址:

  本模块使用内置浏览器登录,所以不用写“登录设置”部分,现在直接写文章发布部分。这分为两个步骤。首先,获取列 ID。栏目ID是文章系统中栏目对应的一个值。它可以是数字或其他。您无需获取此类别 ID。如果知道column ID,可以直接在release配置中填写相应的值或者将[category ID]替换为自己的label。以后注意把列ID的值写在规则里。而已。

  要做的就是找一个收录

栏目ID的页面,在里面可以提取栏目ID和栏目名称,一般最好找到select,使用option下拉菜单制作栏目的页面, DeDeCms现在很多调用栏目,你可以找一个,现在以/dede/catalog_tree.php?f=form1&opall=1&v=typeid&bt=selbt1&c=0为例,看看具体的页面情况。

  图1 生成静态页面中选定列的列表

  这里有所有的列,代码也比较简单,大家可以看看,关于列的代码如下

  

 √请在要选择的栏目打勾

不限栏目

test1

test12

test2

test3

 

  列ID和列名的代码形式为onClick="ReSel(2,'test2'),其中2为列值,test2为列名,可以通过这种方式获取,具体可以先看图2,取开头结尾,然后程序会从中间提取的内容中找到>形状的内容,然后提取里面的值,然后得到类别的名称和具体值ID。

  图2是刷新列表设置,解释一下各个名词的含义:

  图2 获取列ID时的设置

  刷新列表页也是用来获取表层页面的。源码页面一般不需要写,只有一些特殊的系统需要查源码。页面区域是一个选中的区域,里面的内容收录

分类信息。这里也可以留空,默认整个页面。类别列表名称和 ID 格式是最重要的。请注意,规则必须符合所有列表格式。当然,它只能用于获取想要的类别或列。

  使用以上设置获取类别ID和类别名称。具体可以参考图3效果图,注意在网站/cms根地址填写的地址(设为地址A)和图2刷新列表页面地址(设为地址B)添加(即A+B),也就是页面的实际地址。其他地方也是一样,都是A加上模块中的地址或后缀。

  图3 刷新列表效果

  现在让我们发布一篇文章来做“文章发布参数”这块。直接进入发布文章页面。

  查看网页属性获取发布页面地址 /dede/catalog_do.php?channelid=1&cid=1&dopost=addArchives

  查看本页面源码,注意不要关闭,以后用得着。先发一篇文章,注意把标题或者内容写好,建议全部用英文字母写,因为有些系统会对发布的文字进行不同的编码,英文一般不会变。详情请参考图4。

  图4 发表时文章标题或内容的建议写法

  对于某些部分,如果不想写或者想为空,可以像图4源一样,写文章的时候不加,发布的时候再抓取数据包。每一项写好后,打开Winsock Expert。参见图5,选择发布文章的程序页面,不同浏览器的选择方法可能不同,只要选择了程序,就可以监控浏览器数据的发送状态。

  

" />

  图5 使用Winsock Expert监控浏览器数据传输

  完成以上所有操作后,您可以单击“确定”。注意,点击确定后,会很快暂停Winsock Expert中的抓包,查看获取到的数据,因为有些系统数据发送速度非常快,可以发现Winsock Expert中的数据没有post数据。查看捕获的数据,有关详细信息,请参见图 6。

  图6 使用Winsock Expert获取的浏览器发送的数据

  看选中的行,有一行是post字样的,就是你要的信息。其中,看最下面的内容,就是浏览器发送过来的数据。一些发送的数据是用邮局的,而有些则不是。看具体含义

  POST /dede51/dede/action/article_add_action.php

  这是邮寄地址

  Referer: http://127.0.0.1/dede51/dede/catalog_do.php?channelid=1&cid=1&dopost=addArchives

  这是源页面。去掉前面的URL部分就是源地址。

  把上面的网址写进发表地址的后缀和来源页面的后缀,看看下面得到的浏览器发送的数据。以下是获取到的数据内容:

  这里是获取的post数据,省略了部分内容。

  

-----------------------------7d8271202203c0

Content-Disposition: form-data; name="channelid"

1

-----------------------------7d8271202203c0

Content-Disposition: form-data; name="title"

caijitt

-----------------------------7d8271202203c0

Content-Disposition: form-data; name="redirecturl"

-----------------------------7d8271202203c0

Content-Disposition: form-data; name="tag"

Caijitag

………………………………中间这部分略去,因为数据很多………………………

-----------------------------7d8271202203c0

Content-Disposition: form-data; name="arcrank"

-----------------------------7d8271202203c0

Content-Disposition: form-data; name="ishtml"

1

-----------------------------7d8271202203c0

Content-Disposition: form-data; name="description"

-----------------------------7d8271202203c0

Content-Disposition: form-data; name="keywords"

-----------------------------7d8271202203c0

Content-Disposition: form-data; name="likeid"

-----------------------------7d8271202203c0

Content-Disposition: form-data; name="imageField"

<p>

" />

确定

-----------------------------7d8271202203c0—

这些内容是什么意思呢?我们以下边的内容为例:

-----------------------------7d8271202203c0

Content-Disposition: form-data; name="ishtml"

1

</p>

  这是一个表单项,名称是html,值为1,现在在源码中可以看到

  

发布选项:

生成HTML

仅动态浏览

  大家可以知道,这里的1是生成静态的。在制作最终的帖子内容时,是这样的格式:

  表单项名=值&表单项名=值

  这样,当ishtml=2时,表示动态发布。更多的含义可以从源码中看出。

  合并上面的数据提取,将title替换为[label:title],将content替换为[label:content],其他类似。会得到

  

channelid=1&title=[标签:标题]&redirecturl=&tag=[标签:TAG]&source=&writer=&litpic=&picname=&typeid=1

&dede_addonfields=&remote=1&spsize=5&body=[标签:内容]&shorttitle=&arcatt=0&typeid2=0&templet=

&pubdate=2008-07-18 03:46:53&money=0&sortup=0&color=&arcrank=0&ishtml=1&description=&keywords=

&likeid=&imageField=确定

  另外注意pubdate=2008-07-18 03:46:53是发布时间,因为每次手动发布都不一样,可以设置一个tag让它取值时间,比如pubdate=[ 标签: time],也可以直接从发布页面源码获取,发布源页面源码在发布开始时保存。这时候就可以使用login random value这个标签,其实就是从一个页面获取一些参数。make pubdate=[login random value 1],在随机值获取和UBB中定义并获取“login random value 1”,可以先看看图7

  图7 随机值获取及ubb设置

  在源代码中是

  

 发布时间:

  两边都可以

  其他一些参数,也可以指定固定值,比如writer,可以固定为writer=小明,也可以使用tags,writer=[tag:author],也可以设置使用其他tags根据要求。

  所有标签在发布前都将被替换或处理。

  在添加WEB发布配置中测试模块正确性中测试发布,可以正常发布,发布后会返回“成功发布文章:”字样,可以将这些字作为发布成功标识码. 具体见图8。当然,你也可以故意制造一些错误,得到“发行错误识别码”,这样在发行错误的时候就可以知道原因,修改相关设置。下面是基本完成的模块:

  图8 文章发布参数设置

  最后一部分是解释保护。说明是增加一些注意事项,使用说明等,如果是保护的,可以加密码,对帮助别人写模块有保护作用。在系统模块名称的底部,可以写适用的系统,请写版本号。如图9所示

  图 9 说明了保护和其他设置

  参考来源 优采云

采集

器手册导航

  安装:

  系统安装

  主要程序:

  子程序:

  应用开发:

  数据库发布模块编辑制作| 外部编程插件开发

  模块开发:

  DedeCMS文章模块|PHPWind论坛模块|Discuz论坛模块

  常问问题:

  干货教程:新手使用优采云

发布接口如何采集文章教程

  前沿:

  如果你对优采云

一无所知,你最好去网上学习一下优采云

采集

的小知识。本人不是高手,所以鼓起勇气写了出来,至少能用。这里就不教采集

规则怎么写了,因为写法太多了,问我也不知道,优采云

相关文件夹里提供的发布接口有内置的-投资发布文章,支持远程抓图、本地化、发布文章时间设置(10-70分钟随机)。用户只需要关注优采云

的标题和内容,参数值为title(标题)和content(内容)。

  第一步:在站点设置中设置优采云

免登录发布接口的全局变量值:

  第二步:上传发布界面覆盖程序根目录:

  第三步:登录优采云

软件后,导入release模块”

  下图更多下拉-选择导入:

  导入后:

  

" />

  上图中数字1填写的是你在网站后台设置的全局变量值。

  2 选择utf-8编码。

  在 3 处填写您的网站域名,不要使用反斜杠“/”。

  4个选项不需要登录

  5次点击获取列表--选择你需要存储的类别

  6. 为当前发布模块写一个名字,后续采集任务模块会用到。

  最后点击保存配置按钮。

  ----------

  

" />

  下面解释一下导入采集任务:

  新建任务组后,导入该组下的任务规则(import tasks to this group):

  选择我们的采集作业规则(.ljobx 文件):

  下一步:双击规则项

  单击第 3 步:修改帖子内容设置

  修改您发布的类别:

  最后保存:

  然后右键开始任务采集:

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线