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

蓝天采集社区

 找回密码
 立即注册
搜索
热搜: 采集 cms
开启左侧

各类cms程序征集,不支持的cms集中发这里!

[复制链接]
蜀戎网络开发者 发表于 2020-1-14 10:50:27 | 显示全部楼层
163K地方门户系统,官方演示https://www.mh163k.com/
回复 支持 反对

使用道具 举报

linxi 发表于 2020-4-8 14:37:17 | 显示全部楼层
本帖最后由 linxi 于 2020-4-8 14:39 编辑

感谢大佬编写的采集器,求发布插件
cms程序名: 易优cms(eyoucms)     官网:https://www.eyoucms.com/
cms数据库配置文件路径:/application/database.php
cms数据库配置代码
  1. <?php
  2. /**
  3. * 易优CMS
  4. * ============================================================================
  5. * 版权所有 2016-2028 海南赞赞网络科技有限公司,并保留所有权利。
  6. * 网站地址: http://www.eyoucms.com
  7. * ----------------------------------------------------------------------------
  8. * 如果商业用途务必到官方购买正版授权, 以免引起不必要的法律纠纷.
  9. * ============================================================================
  10. * Author: 小虎哥 <1105415366@qq.com>
  11. * Date: 2018-4-3
  12. */

  13. return array(
  14.     // 数据库类型
  15.     'type'            => 'mysql',
  16.     // 服务器地址
  17.     'hostname'        => '127.0.0.1',
  18.     // 数据库名
  19.     'database'        => '库名',
  20.     // 用户名
  21.     'username'        => '用户名',
  22.     // 密码
  23.     'password'        => '密码',
  24.     // 端口
  25.     'hostport'        => '3306',
  26.     // 连接dsn
  27.     'dsn'             => '',
  28.     // 数据库连接参数
  29.     'params'          => array(),
  30.     // 数据库编码默认采用utf8
  31.     'charset'         => 'utf8',
  32.     // 数据库表前缀
  33.     'prefix'          => 'ey_',
  34.     // 数据库调试模式
  35.     'debug'           => false,
  36.     // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
  37.     'deploy'          => 0,
  38.     // 数据库读写是否分离 主从式有效
  39.     'rw_separate'     => false,
  40.     // 读写分离后 主服务器数量
  41.     'master_num'      => 1,
  42.     // 指定从服务器序号
  43.     'slave_no'        => '',
  44.     // 是否严格检查字段是否存在
  45.     'fields_strict'   => true,
  46.     // 数据集返回类型
  47.     'resultset_type'  => 'array',
  48.     // 自动写入时间戳字段
  49.     'auto_timestamp'  => false,
  50.     // 时间字段取出后的默认时间格式
  51.     'datetime_format' => 'Y-m-d H:i:s',
  52.     // 是否需要进行SQL性能分析
  53.     'sql_explain'     => false,
  54.     // Builder类
  55.     'builder'         => '',
  56.     // Query类
  57.     'query'           => '\\think\\db\\Query',
  58.     // 是否需要断线重连
  59.     'break_reconnect' => false,
  60. );
复制代码
回复 支持 反对

使用道具 举报

dodd001 发表于 2020-4-9 10:45:11 | 显示全部楼层
本帖最后由 dodd001 于 2020-4-9 18:30 编辑

cms程序名: KYXSCMS(狂雨小说cms) 1.2.1
cms数据库配置文件路径:/config/datebase.php
cms数据库配置代码
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | ThinkPHP [ WE CAN DO IT JUST THINK ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2006~2018 http://thinkphp.cn All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
  8. // +----------------------------------------------------------------------
  9. // | Author: liu21st <liu21st@gmail.com>
  10. // +----------------------------------------------------------------------

  11. return [
  12.     // 数据库类型
  13.     'type'            => 'mysql',
  14.     // 服务器地址
  15.     'hostname'        => '127.0.0.1',
  16.     // 数据库名
  17.     'database'        => 'kyxscms',
  18.     // 用户名
  19.     'username'        => '',
  20.     // 密码
  21.     'password'        => '',
  22.     // 端口
  23.     'hostport'        => '3306',
  24.     // 连接dsn
  25.     'dsn'             => '',
  26.     // 数据库连接参数
  27.     'params'          => [],
  28.     // 数据库编码默认采用utf8
  29.     'charset'         => 'utf8',
  30.     // 数据库表前缀
  31.     'prefix'          => 'ky_',
  32.     // 数据库调试模式
  33.     'debug'           => false,
  34.     // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
  35.     'deploy'          => 0,
  36.     // 数据库读写是否分离 主从式有效
  37.     'rw_separate'     => false,
  38.     // 读写分离后 主服务器数量
  39.     'master_num'      => 1,
  40.     // 指定从服务器序号
  41.     'slave_no'        => '',
  42.     // 自动读取主库数据
  43.     'read_master'     => false,
  44.     // 是否严格检查字段是否存在
  45.     'fields_strict'   => true,
  46.     // 数据集返回类型
  47.     'resultset_type'  => 'array',
  48.     // 自动写入时间戳字段
  49.     'auto_timestamp'  => false,
  50.     // 时间字段取出后的默认时间格式
  51.     'datetime_format' => false,
  52.     // 是否需要进行SQL性能分析
  53.     'sql_explain'     => false,
  54.     // Builder类
  55.     'builder'         => '',
  56.     // Query类
  57.     'query'           => '\\think\\db\\Query',
  58.     // 是否需要断线重连
  59.     'break_reconnect' => false,
  60.     // 断线标识字符串
  61.     'break_match_str' => [],
  62. ];
复制代码
cms后台采集处理对应的标签文件
\kyxscms\application\admin\model\Collect.php
  1. <?php
  2. namespace app\admin\model;
  3. use think\Model;
  4. use think\facade\Cache;
  5. use think\facade\Env;
  6. use think\Db;
  7. use app\admin\validate\Collect as CollectValidate;

  8. class Collect extends Model{

  9.     protected $autoWriteTimestamp = true;
  10.     protected $json = ['rule','category_equivalents'];
  11.     protected $jsonAssoc = true;

  12.     public function getTypeTextAttr($value,$data){
  13.         $status = ['novel'=>'小说','news'=>'文章'];
  14.         return $status[$data['type']];
  15.     }

  16.     public function getRuleAttr($value){
  17.         foreach ($value as $k => $v) {
  18.             if(!empty($v['replace'])){
  19.                 $value[$k]['replace']=json_decode($v['replace'],true);
  20.             }
  21.         }
  22.         return $value;
  23.     }

  24.         public function info($id){
  25.                 $map['id'] = $id;
  26.             $info=Collect::where($map)->find()->toArray();
  27.                 return $info;
  28.         }

  29.     public function lists(){
  30.         return Collect::order('id asc')->paginate(config('web.list_rows'));
  31.     }

  32.         public function edit($data){
  33.         $validate = new CollectValidate;
  34.         if (!$validate->scene($data['type'])->check($data)) {
  35.             $this->error=$validate->getError();
  36.             return false;
  37.         }
  38.         $Collect = new Collect();
  39.         if(empty($data['id'])){
  40.             $result = $Collect->allowField(true)->save($data);
  41.         }else{
  42.             Cache::clear('collect');
  43.             $result = $Collect->allowField(true)->isUpdate(true)->save($data);
  44.         }
  45.         if(false === $result){
  46.             $this->error=$Collect->getError();
  47.             return false;
  48.         }
  49.         return $result;
  50.     }

  51.     public function sever_data($info,$field){
  52.         $chapter=[];
  53.         $chapter_field=[];
  54.         $data_link=[];
  55.         if(is_array($field)){
  56.             $field_data['reurl']=$field["reurl"];
  57.             $field_data['update_time']=time();
  58.             if(isset($field["id"]) && isset($info['update'])){
  59.                 Db::name($info['type'])->where(['id'=>$field["id"]])->update($field_data);
  60.                 rm_cache($field['id'],$info['type']);
  61.                 $data_id=$field["id"];
  62.             }else{
  63.                 $field_data['category']=$field['category'];
  64.                 $field_data['title']=$field['title'];
  65.                 $field_data['pic']=$field['pic'];
  66.                 $field_data['content']=$field['content'];
  67.                 if($info['type']=='novel'){
  68.                     $field_data['author']=$field['author'];
  69.                     $field_data['serialize']=$field['serialize'];
  70.                     $field_data['tag']=$field['tag'];
  71.                     $field_data['word']=count($field['chapter'])*2000;
  72.                 }
  73.                 $field_data['create_time']=time();
  74.                 $data_id=Db::name($info['type'])->insertGetId($field_data);
  75.                 rm_cache(NUll,$info['type']);
  76.                 $data_link[]=url('home/'.$info['type'].'/index',['id'=>$data_id]);
  77.             }
  78.             if($info['type']=='novel'){
  79.                 foreach ($field["chapter"] as $value) {
  80.                     $chapter_data=[];
  81.                     $keys=        ();
  82.                     $chapter_data['title']=$value["title"];
  83.                     $chapter_data['intro']='';
  84.                     $chapter_data['update_time']=time();
  85.                     $chapter_data['issued']=1;
  86.                     $chapter_data['word']=2000;
  87.                     $chapter_data['reurl']=$value["url"];
  88.                     $chapter_data['auto']=2;
  89.                     $chapter_data['path']=$data_id.DIRECTORY_SEPARATOR.$keys.'.txt';
  90.                     $chapter[$keys]=$chapter_data;
  91.                 }
  92.                 $chapter_db=json_encode($chapter);
  93.                 $chapter_db=model('common/api')->compress_chapter($chapter_db);
  94.                 $chapter_field['status']=1;
  95.                 $chapter_field['novel_id']=$data_id;
  96.                 $chapter_field['chapter']=$chapter_db;
  97.                 $chapter_field['reurl']=$field['chapter_url'];
  98.                 $chapter_field['collect_id']=$info['id'];
  99.                 $chapter_field['run_time']=time()+600;
  100.                 if(isset($field["id"]) && isset($info['update'])){
  101.                     // 删除原有小说文件
  102.                     $addons_name = Cache::remember('addons_storage',function(){
  103.                         $map = ['status'=>1,'group'=>'storage'];
  104.                         return Db::name('Addons')->where($map)->value('name');
  105.                     });
  106.                     if($addons_name){
  107.                         $chapter=DB::name($info['type'].'_chapter')->where(['novel_id'=>$field["id"]])->value('chapter');
  108.                         $chapter=model('common/api')->decompress_chapter($chapter);
  109.                         $chapter=json_decode($chapter,true);
  110.                         if($chapter){
  111.                             $path=array_column($chapter,'path');
  112.                             $addon->unlink($path);
  113.                         }
  114.                     }else{
  115.                         del_dir_file(Env::get('runtime_path').'txt'.DIRECTORY_SEPARATOR.$field["id"],true);
  116.                     }
  117.                     // 更新数据
  118.                     $chapter_id=Db::name($info['type'].'_chapter')->where(['novel_id'=>$field["id"]])->value('id');
  119.                     Db::name($info['type'].'_chapter')->where(['id'=>$chapter_id])->update($chapter_field);

  120.                 }else{
  121.                     $chapter_id=Db::name($info['type'].'_chapter')->insertGetId($chapter_field);
  122.                 }
  123.                 foreach ($chapter as $key => $value) {
  124.                     $data_link[]=url('home/chapter/index',['id'=>$chapter_id,'key'=>$key]);
  125.                 }
  126.             }
  127.             model('common/DataOperation')->after('add',$info['type'],$data_link);
  128.             return $field;
  129.         }
  130.     }

  131.     public function field(){
  132.         $data=["field"=>[
  133.                 "novel"=>[
  134.                     "category"=>"栏目",
  135.                     "title"=>"名称",
  136.                     "author"=>"作者",
  137.                     "serialize"=>"连载",
  138.                     "pic"=>"图片",
  139.                     "content"=>"介绍",
  140.                     "tag"=>"标签",
  141.                     "chapter_title"=>"章节名称",
  142.                     "chapter_content"=>"章节内容"
  143.                 ],
  144.                 "news"=>[
  145.                     "category"=>"栏目",
  146.                     "title"=>"名称",
  147.                     "pic"=>"图片",
  148.                     "content"=>"内容"
  149.                 ]
  150.             ],
  151.             "category"=>[
  152.                 'novel'=>get_tree(0),
  153.                 'news'=>get_tree(1)
  154.             ]
  155.         ];
  156.         return $data;
  157.     }
  158. }
复制代码



回复 支持 反对

使用道具 举报

liufu 发表于 2020-4-14 09:52:53 | 显示全部楼层
能出个wellcms  的发布吗?有接口
http://www.wellcms.cn/
开启伪静态POST地址

火车头

http://www.x.com/intodb-管理员uid-登录password.html

其他采集

http://www.x.com/intodb-管理员uid-登录password-版块fid.html



未开启伪静态地址

火车头

http://www.x.com/?intodb-管理员uid-登录password.html

其他采集

http://www.x.com/?intodb-管理员uid-登录password-版块fid.html



其他脚本同样可以使用以上地址入库,仅需将内容POST过来即可。

以下为对应的参数:

fid:板块fid,类型数字
uid:用户uid,类型数字
subject:标题,类型字符串
message:正文内容
tags:标签,类型字符串,英文逗号","分隔,格式为:wellcms,高负载cms,高性能cms
brief:内容简介,类型字符串
brief_auto:自动获取简介,类型数字 0不获取 1获取
keyword:SEO关键词,类型字符串
description:SEO描述
thumbnail:主图(缩略图) ,后台可开启自动获取
save_image:图片本地化,后台可开启自动获取
index:首页属性,类型一维数组,可为空
category:频道属性,类型一维数组,可为空
forum:板块属性,类型一维数组,可为空
回复 支持 反对

使用道具 举报

fzh520 发表于 2020-7-31 07:24:06 | 显示全部楼层
cms程序名:jizhicms (极致cms)
没有这个
回复 支持 反对

使用道具 举报

lanfusen 发表于 2020-8-6 10:44:12 | 显示全部楼层
cms程序名:国微CMS
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2020-12-5 16:02 , Processed in 0.021685 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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