zoukankan      html  css  js  c++  java
  • 一文多发神器

    原文地址:https://juejin.im/post/6844904083694813192

    主要添加了自己在部署过程中出现的问题,提供了相应的解决方案,关于内网如何部署ArtiPub的相关记录

    一文多发神器--ArtiPub&OpenWrite

    网上冲浪的时候,发现一篇文章,「群晖搭建ArtiPub – 一款开源的一文多发平台」,才发现我想要的一文多发软件早就有了。

    一文多发

    所谓一文多发,就是把一篇文章同时发布到多个平台。

    之前写文章,除了发布到自己的博客,还会同步到知乎专栏、CSDN 和简书上。刚开始还好,后面写的多了,每次都要复制粘贴,调整格式,觉得重复性工作太多。

    然后就想,要是有一个工具,能同时把文章发布到所有平台该多好啊。偶然看到了开头说到的那篇文章,才知道把文章同时发布到不同平台的专业说法叫一文多发

    顺着这个搜索了一下,发现除了 「ArtiPub」,还有 「OpenWrite」。

    ArtiPub

    项目地址:github.com/crawlab-tea…

    截止到写本文时,ArtiPub 的 stat 数已经到 1.7k 了。

    ArtiPub (Article Publisher的简称,意为"文章发布者")是一款开源的一文多发平台,可以帮助文章作者将编写好的文章自动发布到掘金、SegmentFault、CSDN、知乎、开源中国等技术媒体平台,传播优质知识,获取最大的曝光度。

    目前支持以下平台:

    • 掘金
    • SegmentFault
    • CSDN
    • 简书
    • 知乎
    • 开源中国
    • 今日头条
    • 博客园

    ArtiPub 提供了三种安装方式,我这里介绍一下在 CentOS 下以 Docker 方式安装,如果你没有 MongoDB,那么这种方式应该是相对简单的。

    1、安装 Docker

    参考我之前的文章「Docker环境搭建(CentOS篇)」。

    2、安装 Docker Compose

    执行下面命令,下载 Docker Compose:

    sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
    

    更快速的安装方式为下面,且是最新版

    sudo curl -L https://get.daocloud.io/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
    

    上面安装完成后,执行下面命令赋予权限:

    sudo chmod +x /usr/local/bin/docker-compose
    

    执行下面命令,验证 Docker Compose 是否安装成功:

    docker-compose -v
    

    显示 docker-compose version 1.27.4, build 8d51620a 表示安装成功。

    3、安装 ArtiPub

    这里有个坑,原作者官网的docker安装教程是会报错的,无法正常进行部署,这里使用第三方作者的docker镜像进行部署的,第三方作者的docker镜像仓库地址:https://hub.docker.com/r/gogobody/artipush

    创建 docker-compose.yaml,编辑文件,粘贴下面的内容:

    这里暂时有问题

    程序能够起来,并且测试过“SegmentFault”与“开源中国”能够正常发布,“简书”、“知乎”、“微信公众号”没有试过,“CSDN”、“V2ex”、“掘金”、“博客园”发布会错误。

    version: '3.3'
    services:
      app:
        image: "tikazyq/artipub:latest"
        environment:
          MONGO_HOST: "mongo"
          ARTIPUB_API_ADDRESS: "http://localhost:3000" # 后端 API 地址,如果安装地址不在本机,请修改为协议 + 服务器 IP 地址 + 端口号(默认为 3000)
        ports:
          - "8000:8000" # frontend
          - "3000:3000" # backend
        depends_on:
          - mongo
      mongo:
        image: mongo:latest
        restart: always
        ports:
          - "27017:27017"
    

    保存之后,执行下面的命令:

    docker-compose up
    

    等待下载和服务器启动之后,在浏览器输入 服务器 IP:8000 即可访问。

    界面如下:

    image-20201106210911338

    4、使用说明

    • 点击"下载登陆助手",保存文件名为"artipub-helper.zip"。
    • 在Chrome浏览器中输入chrome://extensions,并开启开发者模式(点击右上角)。
    • 将下载的登陆助手文件artipub-helper.zip拖入浏览器中,浏览器将自动安装插件(如果不能拖拽,请刷新页面后重试)。
    • 在使用登陆助手之前,请确保您的各个平台账号已经处于登陆状态。
    • 右上角点击安装好的插件图标,点击"一键获取登陆信息",插件将获取所有平台的Cookie。
      注意: 如果您的服务器没有部署在本机,请点击"扳手"按钮,输入服务器的IP地址+端口号(默认3000),然后再获取登陆信息。
    • 到"平台管理"页面,点击"更新Cookie状态"(需要大约1分钟),然后查看"Cookie状态",确保其为"已导入"状态。
    • 到"文章管理"页面,点击"发布",选择登陆方式为"Cookie",然后发布文章。

    内网穿透进行部署

    因为我在部署的时候是部署在自己实验室的服务器上的,而服务器是属于内网的,所以无法从公网ip进行访问,但是我们实验室通过一台公网机器为跳板搭建了隧道,可以将公网端口转发到内网端口。

    首先通过ssh远程端口转发将公网的某一端口(如8000端口)转发到内网机器(你部署ArtiPub的奇迹)的8000端口上,这里用到的是ssh远程端口转发,这样你就可以通过 《公网ip》:8000来访问前端你发表文章的页面,ssh端口转发详解这篇博客文章

    玩转ssh端口转发

    但是这样会有个问题,因为部署的应用你在前端页面交互时会请求后台数据,而请求的地址为

    ARTIPUB_API_ADDRESS: "localhost:3000" # 后端API地址,如果安装地址不在本机,请修改为服务器IP地址+端口号(默认为3000)
    

    导致直接访问前端页面时,进行相关操作会请求这个地址,无法正常显示数据,所以也需要将 localhost:3000地址转发到内网机器上去(你部署ArtiPub的服务器上),这里用的是ssh本地端口转发,同样关于ssh端口转发的问题可以看是上面说到的文章。

    OpenWrite

    官网:openwrite.cn

    目前支持以下平台:

    • SegmentFault 思否
    • CSDN
    • 掘金
    • 博客园
    • 简书
    • 知乎
    • 开源中国
    • Spring4All
    • 极术社区
    • 今日头条
    • 慕课手记

    1、安装

    无需安装服务端,直接在线使用。

    2、使用说明

    • 打开新的浏览器窗口,登录下方需要扩散的所有渠道
    • 手动在各个渠道发布一篇文章,确保账号正常
    • 下载插件:OpenWrite助手
    • 点击右上角已安装的插件:OpenWrite助手,在插件里点击 "自动认证" 按钮
    • 点击各渠道的 "配置" 按钮,设置文章发布时的默认信息
    • 各渠道完成“配置”之后,点击 "启用" 按钮,开启需要扩散的渠道

    image-20201106212220335

    我的选择

    粗略体验之后,感觉两者的操作体验是类似的;发文逻辑也都是使用 cookie 调用各个平台的文章发布接口;且使用两者都可能导致知乎被封号,这个应该是知乎的封号策略导致的。

    不同的地方在于,ArtiPub 是部署在自己服务器的,数据安全性有保证,且没有功能限制。

    而 OpenWrite 使用的是第三方的服务器,数据安全性有待验证,且免费会员有部分功能限制。

    本来是我准备使用 ArtiPub 的,但是考虑到有封号的风险,并且仅仅是批量发布文章,失去了平台社区的互动,感觉没有灵魂。

    我很少在知乎上发文章,一般在博客园,csdn广告太多

    本文由博客群发一文多发等运营工具平台 OpenWrite 发布

    保持对优秀的热情
  • 相关阅读:
    DAY 206 Python验证常见的50个正则表达式
    DAY 205 python使用ftplib模块实现FTP文件的上传下载
    Jmeter组件介绍
    Jmeter安装
    Jmeter学习笔记
    Jmeter:相应断言介绍
    python time模块
    python+selenium+Eclipse安装
    Python os.path模板函数
    ping 计算机全名,返回的不是IP地址
  • 原文地址:https://www.cnblogs.com/luckforefforts/p/13939110.html
Copyright © 2011-2022 走看看