Python+Typora博客圖片上傳


簡介

用Typora 寫Markdown 1年多了,這個編輯器的確很好用,但就是寫完博客復制到博客園時要一個個手動插替換圖片非常麻煩。后來發現最新版的Typora 已經支持圖片上傳功能,在 設置-圖像 里,你可以找到上傳服務的設定。

其實現原理:Typora 向程序輸入圖片的本地地址,然后接收程序的輸出,再用其替換文檔中的圖片

以下為廢話:

在Typora 推出這個功能前,要實現這個功能實際上可以編寫腳本,先把圖片上傳到網盤,然后通過返回的url替換文件中圖片,但總感覺沒有博客園官方的上傳好。雖然博客園支持 MetaWeblog ,但是要輸入用戶名、密碼什么的,只是上傳圖片感覺有點牛刀小用。

作為菜鳥,了解的東西並不多,過程有點坎坷。起初不知道博客園圖片上傳的接口,傻傻的瀏覽器調試看js文件。后來無意間發現是post 請求,但還是不知道如何將圖片以何種形式傳遞。最后找到了python 可以通過requests傳遞文件。直到這一步所需的工具全部具備。

開始配置

1. 編寫python 代碼
import requests
from sys import argv

uploadUrl = 'https://upload.cnblogs.com/imageuploader/processupload?host=www.cnblogs.com'

headers = {
    "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.149 Safari/537.36",
    "cookie": #和上面格式一樣,輸入自己的cookie
}

for i in argv[1:]:
    format = address[address.rfind(".")+1:]

    file = [
        ("",("fileName", open(address, "rb"),"image/"+format))
    ]
    response = requests.post(uploadUrl,headers = headers,files = file)
    
    text = response.text
    imgUrl = text[text.find("https"):-2]
    
    print(imgUrl)

需要做的就是自己設置瀏覽器的cookie,並將這個py文件保存。

2. 設置Typora

在圖像一欄上傳服務設定中按如下選擇。自定義命令是 python + 編寫的py文件路徑,例如:

python C:\Users\EA\Desktop\homework\mpython\bolg.py

image-20200508151051475

設置好后驗證一下

image-20200508151505375

建議不要設置插入圖片時就 上傳圖片,可能會出現奇妙的bug。。。

image-20200508151636847

后記

上傳所有圖片
image-20200508154152269

使用這個可以上傳所有圖片,但比較坑的是必須要把主題換成經典才有這個按鈕

image-20200508154607624

不過你可以自定義上傳所有圖片的快捷鍵,教程 https://blog.csdn.net/billycoder/article/details/88861283

enjoy Ctrl+C Ctrl+V ~~~~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM