1. 程式人生 > >如何高效的編寫與同步部落格(二)- 快速釋出到多個渠道

如何高效的編寫與同步部落格(二)- 快速釋出到多個渠道

系列目錄

一.前言

我們使用Markdown編寫博文,總免不了文章中出現圖片,這裡的圖片有兩種型別,一種是放在網際網路上的,一種是放在本地的。如果我引用的是網際網路上的圖片(如 https://xxx.com/xxx.png ),我們在各個渠道釋出的時候只需要複製貼上即可,但是這帶來一個問題,如果我們引用圖片的網站如果關閉了外鏈,那我們所發的文章的圖片都將會失效,影響文章的質量。如果我們的圖片放在本地,那麼我們在多個渠道釋出的時候,又需要在每個渠道一張張上傳圖片,豈不是太麻煩,太耗時間了。如果有一個工具能自動解析博文中引用的圖片,然後自動上傳到對應的渠道,並且把我們博文中引用本地圖片的連結改為對應渠道圖片的連結,那麼我們釋出也只用複製貼上即可,瞬間完成十分高效。這裡介紹一下開源專案 BlogTools

,它是一個博文快速多渠道釋出工具包,支援部落格園、阿里雲棲社群、騰訊雲+社群、慕課網手記 4種渠道。

如果你覺得有用,歡迎來個star。

二.BlogTools的作用

這套工具只適用於用Markdown寫部落格或者文章的人群,如果你還不會請花一個小時的時間去熟悉,你就能感受到Markdown給你帶來的好處了。

使用這套工具前,建議先閱讀這篇文章:《如何高效的編寫與同步部落格

BlogTools工具包就是為了解決前言中所述問題,它會解析Markdown檔案中的圖片,然後上傳到對於渠道,並且替換本地連結,下面用幾張圖來表示:

1.原文:

File

2.轉換為 阿里雲棲社群 渠道

Aliyun.

3.轉換為 慕課網手記 渠道

Imooc

主要就是減少你到每個渠道去上傳圖片的操作。你只需複製轉換以後的內容,貼上到對於的渠道即可完成釋出。

三.各個渠道工具包

工具名 說明 版本號
dotnet-aliyun 阿里雲棲社群 Latest version
dotnet-imooc 慕課網手記 Latest version
dotnet-tcloud 騰訊雲+社群 Latest version
dotnet-cnblog 部落格園 Latest version

四.安裝

使用這套工具需要你的pc具備 .NET Core 2.1版本 SDK 環境或者更高版本。且完全支援跨平臺,你可以在.NET Core 支援的任意Linux發行版、Windows、MAC OSX上使用。

1.阿里雲棲社群 工具安裝

開啟命令提示符(cmd),輸入下面的命令進行安裝

dotnet tool install -g dotnet-aliyun

Aliyun Install

2.慕課網手記 工具安裝

開啟命令提示符(cmd),輸入下面的命令進行安裝

dotnet tool install -g dotnet-imooc

Imooc Install

3.騰訊雲+社群 工具安裝

開啟命令提示符(cmd),輸入下面的命令進行安裝

dotnet tool install -g dotnet-tcloud

Tcloud Install

4.部落格園 工具安裝

開啟命令提示符(cmd),輸入下面的命令進行安裝

dotnet tool install -g dotnet-cnblog

Cnblog Install

五.解除安裝

解除安裝工具的命令格式為:

dotnet tool uninstall -g <工具名稱>

六.使用

這套工具主要面向寫技術部落格的人員,所以工具在某些細節的地方並未做處理,比如“登入”。需要使用者自己登入以後,提取Cookie給工具使用。

1.阿里雲棲社群 工具的使用

(1).使用

獲取工具的幫助說明,請執行下面的命令,對每個引數都有說明:

dotnet-aliyun -h

輸出:

Usage: dotnet-aliyun [arguments] [options]

Arguments:
  MarkdownFilePath  Required.Your mrkdown File Path.

Options:
  -h|--help         Show help information
  -c|--cookie       Required.Cookie file path.

使用命令的格式為:

dotnet-aliyun <Markdown檔案路徑> -c <cookie檔案路徑>

例如:

dotnet-aliyun c:\blog\test.md -c c:\blog\cookies\aliyun-cookie.txt

b.開啟瀏覽器的開發者工具並選擇 network 選項卡,準備檢視上傳圖片的互動請求。

c.隨便選擇一張圖片上傳

d.檢視這次請求裡的Cookie,並儲存到文字檔案中

提取Cookie演示:

Aliyun Cookie

只複製圖中的括號中的資料

操作演示:

ys

2.慕課網手記 工具的使用

(1).使用

獲取工具的幫助說明,請執行下面的命令,對每個引數都有說明:

dotnet-imooc -h

輸出:

Usage: dotnet-imooc [arguments] [options]

Arguments:
  MarkdownFilePath  Required.Your mrkdown File Path.

Options:
  -h|--help         Show help information
  -c|--cookie       Required.Cookie file path.

使用命令的格式為:

dotnet-imooc <Markdown檔案路徑> -c <cookie檔案路徑>

例如:

dotnet-imooc c:\blog\test.md -c c:\blog\cookies\imooc-cookie.txt

b.開啟瀏覽器的開發者工具並選擇 network 選項卡,準備檢視上傳圖片的互動請求。

c.隨便選擇一張圖片上傳

d.檢視這次請求裡的Cookie,並儲存到文字檔案中

提取Cookie演示:

Imooc Cookie

只複製圖中的括號中的資料

操作演示:

ys

3.騰訊雲+社群 工具的使用

(1).使用

獲取工具的幫助說明,請執行下面的命令,對每個引數都有說明:

dotnet-tcloud -h

輸出:


Usage: dotnet-tcloud [arguments] [options]

Arguments:
  MarkdownFilePath  Required.Your mrkdown File Path.

Options:
  -h|--help         Show help information
  -c|--cookie       Required.Cookie file path.
  --uin             Required.
  --csrf            Required.

使用命令的格式為:

dotnet-imooc <Markdown檔案路徑> -c <cookie檔案路徑> --uin <uin碼> --csrf <跨域驗證碼>

例如:

dotnet-tcloud c:\blog\test.md -c c:\blog\cookies\imooc-cookie.txt --uin 55566677 --csrf 7788991

b.開啟瀏覽器的開發者工具並選擇 network 選項卡,準備檢視上傳圖片的互動請求。

c.隨便選擇一張圖片上傳

d.檢視這次請求裡的Cookie,並儲存到文字檔案中

e.根據本次上傳圖片請求url中的引數提取uin碼和csrf碼

提取Cookie演示:

Tcloud Cookie

只複製圖中的括號中的資料

操作演示:

ys

4.部落格園 工具的使用

特殊說明,關於使用js程式碼 document.cookie 獲取cookie,經測試騰訊雲+社群和慕課網手記可以,阿里雲棲社群js獲取到的cookie無效,因為必須的cookie項設定為了httponly,js無法獲取。

七.寫在最後

寫這個工具的初衷就是解決博文釋出到多個渠道的麻煩,工具不會收集你的任何資料,如有疑問可以檢視原始碼。關於Cookie提取確實是增加了工具使用的複雜度,不過提取的Cookie根據網站登入的選項 “xx天自動登入”,可以讓Cookie用很長一段時間,不需要每次釋出都去提取。為什麼不寫自動提取Cookie的程式碼,那是因為wo lan,bu xiang xie le,如果你有更好的想法,歡迎與我交流。

相關推薦

如何高效編寫同步部落- 快速釋出渠道

系列目錄 一.前言 我們使用Markdown編寫博文,總免不了文章中出現圖片,這裡的圖片有兩種型別,一種是放在網際網路上的,一種是放在本地的。如果我引用的是網際網路上的圖片(如 https://xxx.com/xxx.png ),我們在各個渠道釋出的時候只需要複製貼上即可,但是這帶來一個問題,如果我們引用圖

如何高效編寫同步博客- 快速發布到渠道

block str 登錄 publish sof 兩種 關閉 ins mac osx 系列目錄 如何高效的編寫與同步博客(一)- 編寫 如何高效的編寫與同步博客(二)- 快速發布到多個渠道 一.前言 我們使用Markdown編寫博文,總免不了文章中出現圖片,這裏的圖片有

如何高效編寫同步部落 .NET Core 小工具實現

系列目錄 一.前言 寫部落格,可以帶給我們很多好處,比如可以讓我們結識更多志同道合的人;在寫部落格過程中去查技術資料或者實踐可以讓我們對知識的掌握和理解更加深刻;通過部落格分享能幫助他人收穫分享的快樂等等。寫部落格真的是一件十分有益的事情,在此我帶給大家一種高效的編寫以及同步部落格的方式,這也是我目前在用的

JavaScript 系列部落

JavaScript 系列部落格(二) 前言 本篇部落格介紹 js 中的運算子、條件語句、迴圈語句以及陣列。 運算子 算術運算子 // + | - | * | / | % | ++ | -- console.log(5 / 2); // 2.5 // 取整 con

flask搭建個人部落——骨架、資料庫

編寫骨架程式: manage.py config.py app/main/__init__.py app/auth/__init__.py app/email.py app/models.py 設計資料庫models: 簡單的建立四個table:roles,users,c

Django 系列部落

Django 系列部落格(二) 前言 今天部落格的內容為使用 Django 完成第一個 Django 頁面,並進行一些簡單頁面的搭建和轉跳。 命令列搭建 Django 專案 建立純淨虛擬環境 在上一篇部落格中已經安裝好了虛擬環境,所以用虛擬環境來安裝指定版本的 Django。為了可以從頭到尾的走一遍

LeiQ手把手帶你搭部落——VPS環境配置

I WANT MY OWN BLOG! 終於步入正題了!這次會帶大家把伺服器內部環境搭好。 在部落格入住前,把這間小屋先裝潢好!LNMP和AMH可以任選其一,LNMP純命令列,AMH帶了一套後臺面板與mysql管理工具,注意!×××不要兩個同時安裝,可能出

用Hexo搭建部落——修改基本內容

在 Hexo 中有兩份主要的配置檔案,其名稱都是 _config.yml。 其中,一份位於站點根目錄下,主要包含 Hexo 本身的配置;另一份位於主題目錄下,這份配置由主題作者提供,主要用於配置主題相關的選項。 1 語言設定 開啟站點目錄下的“_config.yml”

Flask開發輕部落:Flask-模板

作者:chen_h 微訊號 & QQ:862251340 微信公眾號:coderpai 目錄 上節回顧 如果你依照上一章的話,你應當有一個完全工作的簡單的 web 應用程式,我們專案的檔案結構如下(前

如何使用hugo搭建個人部落:修改主題:顏色,字型,佈局

上一篇博文中談到了如何在本地使用hugo預覽特定主題crisp,本文介紹主題的顏色,字型,佈局的修改。 修改主題側邊欄顏色 crisp主題的側邊欄預設是白色,如果想改個顏色咋辦? 到github倉庫 https://github.com/penn201

Django搭建部落:進階:form model配合使用

一、使用情景 在我們的後臺管理頁面中需要一個表單來提交和修改部落格,按照上一篇講的,我們可以這麼使用: 先定義一個 Form類,包括標題、標籤和內容三個欄位: class ArticleForm(forms.Form): title = forms.CharFi

搭建自己的部落十一:通過django表單實現登入註冊

1、變化的部分 2、上程式碼: {# 引用模板 #} {% extends 'base.html' %} {% load staticfiles %} {% block header_extends %} <link rel="stylesheet" h

搭建自己的部落:通過ajax提交評論資訊,並增加公式編輯功能

編輯功能使用到了ckeditor的MathJax元件。ajax提交評論可以不用重新整理瀏覽器。 1、變化的部分 2、上程式碼: ul.blog-types,ul.blog-dates { list-style-type: none; } div.blog:no

搭建自己的部落十五:優化點贊功能,並新增模態登入框

1、變化的部分: 2、上程式碼: {# 引用模板 #} {% extends 'base.html' %} {% load staticfiles %} {% load comment_tags %} {% load likes_tags %} {% block h

搭建自己的部落十六:增加登入註冊以及個人資料按鈕

1、變化的部分 2、上程式碼: {# 引用模板 #} {% extends 'base.html' %} {% load staticfiles %} {% load comment_tags %} {% load likes_tags %} {% block he

搭建自己的部落十七:自定義使用者模型

2、變化的部分 {% load staticfiles %} <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <!--

搭建自己的部落十八:增加繫結郵箱的功能,完善使用者資訊

1、郵箱伺服器使用了騰訊伺服器 具體操作見:python自動發郵件 2、變化的部分 3、上程式碼: {# 引用模板 #} {% extends 'base.html' %} {% load staticfiles %} {% load comment_tags %}

LeiQ手把手帶你搭部落——整體結構及VPS和域名的購買解析

I WANT MY OWN BLOG! 看到這篇文章,你應該也是抱著這個念頭來的吧? 來都來了,不會讓你空手而歸的! 前言 其實博主搭建個人部落格以及寫這篇文章純粹是死逼著自己出於喜好 原本是為了註冊一個外國的app賬號,是的你沒有看錯!起因與部落格

菜雞的Django學習筆記如何建立第一部落頁面

1.pycharm,new project,django,專案名設為myblog 2.Tools,Run manage.py Task… 3.在下面輸入startapp blog 這裡建立了一個名叫blog的應用 4.將應用名新增到setting.p

這麼過分,一定要寫篇部落2 —— 關於jupyter notebook的安裝配置以及Py2Py3核心共存的系列問題

前情提要不重要 最近還是在看聚類方面的論文,用MATLAB做完FCM的實驗之後,考慮到自己一直在學Python,總覺得應該悄咪咪地實現一下這個讓我既愛又恨的演算法嘻嘻。之後查資料時看到各位大佬瘋狂安利Ipython notebook(也就是本文介紹的jupyt