请选择 进入手机版 | 继续访问电脑版

蓝天采集社区

 找回密码
 立即注册
搜索
热搜: 采集 cms
查看: 453|回复: 6

是否可以利用火车头的免登录发布程序发布数据呢?

[复制链接]

1

主题

7

帖子

83

积分

注册会员

Rank: 2

积分
83
发表于 2018-11-30 10:55:17 | 显示全部楼层 |阅读模式
首先感谢官方提供的这么好的开源产品哈,第一感受设计思路和火车头很像,像我这样的火车头用户基本上可以无缝切换,减少了学习成本,,请官方弄一个打赏页面,我想略表心意,支持国产开源作品


同时,我想咨询一个问题,就是在发布的时候,我一般是使用火车头的免登录发布,一般是在该程序的根目录下面开发一个免登录的发布程序(一般为一个php页面),就是采集的数据通过post方法提交到该发布程序,然后该发布程序进行数据处理,请问这个思路在skycaiji上面如何实现呢?
我初步摸索了一下,应该是有两种方案,一种是开发应用 111.png ,这个是官方的思路(官方已经提供了wordpress、discuz,dedecms)等常用的程序发布参考程序,该方案和火车头的免登录发布思路类似,唯一不耦合的是,程序需要对比火车头的免登录程序发布进行程序修改;
第二个思路,是我昨天思考的,通过 222.png php代码,将数据post到火车头的免登录发布程序(一般为一个php页面),这样这个免登录发布的程序就不用重新。这个思路理论可行,但是官方没有提供示例和参考,我也是昨天才接触这个程序,所以也没有写出案例,不知道实际是否能行得通(如果能实现,这样对于火车头用户来说是最方便的、转换成本最小的,即所有的火车头免登录发布程序都可以直接使用,不用做任何修改),请官方给出示例,也请官方确认我这个第二个思路是否可行,谢谢!


回复

使用道具 举报

1

主题

7

帖子

83

积分

注册会员

Rank: 2

积分
83
 楼主| 发表于 2018-12-7 11:39:23 | 显示全部楼层
本帖最后由 infoseek 于 2018-12-7 11:45 编辑
  1. /*导入数据*/
  2.         public function runImport($params){
  3.                 /*
  4.                  * -----这里开始写代码-----
  5.                  * 数据库操作:$this->db(),可参考thinkphp3.2的数据库操作
  6.                  * 参数值列表:$params,$params[变量名] 调用参数的值
  7.                  */
  8.                
  9.                 $newdata= array(
  10.                         'id' => $params['id'],
  11.                         'content' => $params['content'],
  12.                         'comments' =>
  13.                                 array(
  14.                                         'author' => $params['comments_author'],
  15.                                         'time' => $params['comments_time'],
  16.                                 ),
  17.                 );

  18.         $url = '火车头免登录提交的url';
  19.         if (empty($url) || empty($newdata)) {
  20.             return false;
  21.         }


  22.         $postUrl = $url;
  23.         $curlPost = http_build_query($newdata);
  24.         $ch = curl_init();//初始化curl
  25.         curl_setopt($ch, CURLOPT_URL,$postUrl);//抓取指定网页
  26.         curl_setopt($ch, CURLOPT_HEADER, 0);//设置header
  27.         curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上
  28.         curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
  29.         curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
  30.         $data = curl_exec($ch);//运行curl
  31.         curl_close($ch);

  32.         //return $data;
  33.                
  34.                 /*
  35.                  * 必须以数组形式返回:
  36.                  * id(必填)表示入库返回的自增id或状态
  37.                  * target(可选)记录入库的数据位置(发布的网址等)
  38.                  * desc(可选)记录入库的数据位置附加信息
  39.                  * error(可选)记录入库失败的错误信息
  40.                  * 入库的信息可在“已采集数据”中查看
  41.                  */
  42.                 return array('id'=>0,'target'=>'','desc'=>'','error'=>$data);
  43.         }
复制代码
经测试,可行,完全不用修改火车头的免登录发布程序,利用 开发工具-发布应用,自己写一个应用即可,应用的具体操作方法见官方教程,基本上火车头的用户可以无缝转换,再次感谢官方。
回复 支持 1 反对 0

使用道具 举报

21

主题

603

帖子

1922

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1922
发表于 2018-11-30 13:15:45 | 显示全部楼层
谢谢支持!不能直接使用火车头的,你的思路是可以的,你可以看看火车头接收插件中传递了哪些参数,然后用自定义插件编写php curl 代码post参数到火车头的页面中
回复 支持 反对

使用道具 举报

1

主题

7

帖子

83

积分

注册会员

Rank: 2

积分
83
 楼主| 发表于 2018-11-30 15:18:39 | 显示全部楼层
admin 发表于 2018-11-30 13:15
谢谢支持!不能直接使用火车头的,你的思路是可以的,你可以看看火车头接收插件中传递了哪些参数,然后用自 ...

感谢管理员快速耐心的回复,恩,我也是确认通过curl代码post参数到免登录接口,这样就不用修改程序,直接可以直接用火车头的免登录发布程序了,我先摸索,后续如果可行,再来报告,另外,理论上这个思路是可行的,为什么官方不推荐这个方案呢?因为相当多的网友是火车头用户,如果推荐这个方案,应该转换是最快最便捷的。毕竟火车头有这么多年的历史了,他的操作模式已经形成惯性了。
回复 支持 反对

使用道具 举报

21

主题

603

帖子

1922

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1922
发表于 2018-12-5 15:17:37 | 显示全部楼层
两个程序还是不一样的,任何第三方插件都由用户自行整合,官方仅完善本程序及相关插件,谢谢支持!
回复 支持 反对

使用道具 举报

1

主题

7

帖子

83

积分

注册会员

Rank: 2

积分
83
 楼主| 发表于 2018-12-5 15:25:42 | 显示全部楼层
admin 发表于 2018-12-5 15:17
两个程序还是不一样的,任何第三方插件都由用户自行整合,官方仅完善本程序及相关插件,谢谢支持! ...

回复 支持 反对

使用道具 举报

7

主题

10

帖子

139

积分

注册会员

Rank: 2

积分
139
发表于 2018-12-27 13:40:42 | 显示全部楼层
infoseek 发表于 2018-12-7 11:39
经测试,可行,完全不用修改火车头的免登录发布程序,利用 开发工具-发布应用,自己写一个应用即可,应用的 ...

给你点赞   感谢分享
回复 支持 反对

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|蓝天采集社区

GMT+8, 2019-3-25 03:31 , Processed in 0.025282 second(s), 24 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表