零基礎二十分鐘搭建SAE微信個人號後臺
最近看到伯樂在線上有寫配置微信後臺的東西,用了不錯的框架,看評論感覺沒有講怎麼配置到雲端有點可惜。
剛好五一我給人寫了一個SAE後臺(MyPlatform),做了文章列表、自動回覆。
我順帶錄了個配置視訊給他,可謂二十分鐘零基礎配置。
於是寫下這篇文章,來介紹一下SAE上Python搭建的微信個人公眾號後臺的配置。
閱讀建議
如果你想要搭建一個個人號或者想要擴充套件自己的個人號,可以只閱讀“基於MyPlatform搭建後臺”一節。
如果你想要了解SAE與Python的配合,可以順序閱讀。
如果你只是在SAE與Python的配合中遇到了一些難點,可以直接閱讀“SAE配置入門”一節。
成果展示
完成配置以後的微信個人公眾號會是這個樣子。(本號不更新,僅作演示用途,看完請取關)
這是公眾號的互通演示以及文章列表的展示。
基於MyPlatform搭建後臺
本部分教程基於我寫給朋友的MyPlatform專案。
完成本部分可以獲得成果展示中同樣功能的一個公眾號以及對配置的基本瞭解。
準備工作
- 實名認證過的SAE賬號(實名認證需要一些時間,雖然運氣好的話幾小時就好)
- 微信公眾平臺個人賬號(其他型別其實也可以啦)
- 圖靈機器人API Key,圖靈官網獲取(如果沒有也沒關係,空著就好,隻影響自動回覆)
- 確保命令列能夠執行
python
及git
。(python版本為2.7)
本專案需要配置三樣東西,按照順序先後為:新浪SAE,微信公眾平臺,本地檔案
新浪SAE
再次提醒,配置該專案需要SAE實名認證。
下面假設你已經擁有了一個實名認證的SAE賬號並完成了登陸。
首先,我們需要建立一個應用(這一步在控制檯操作即可)
建立一個應用
配置應用,自定義域名並選擇Python 2.7作為執行環境
選擇Git作為程式碼同步工具
完成配置後獲得倉庫地址
將該倉庫git clone
到本地,按要求輸入SAE使用者名稱及安全密碼(注意不是登入密碼),你會得到一個目錄(後文稱專案目錄)
git clone 倉庫地址(換成自己的倉庫地址)
到了這一步,新浪SAE的配置就完成了。
微信公眾平臺
登陸並進入微信公眾平臺後臺
進入開發者基本配置
獲取AppId(應用ID)和AppSecret(應用密匙),這兩項之後會用到,建議拿記事本記一下。
之後點選伺服器配置右邊的修改配置,將URL,Token,EncodingAESKey填寫完成並選擇明文模式(不要點提交)
Token可以隨意填寫,只要滿足要求(之後會用到,記一下)。EncodingAESKey隨機生成即可。URL即SAE應用域名地址,可以在SAE控制檯點進應用後找到。
將網頁放著不要關閉即可,不用點選提交。
到了這一步,微信公眾平臺基本就完成了配置。(還剩下確認要等本地檔案完成後再做)
本地檔案
你首先需要把本專案下載到本地,你可以選擇下載壓縮包或者通過命令安裝:
git clone https://github.com/littlecodersh/MyPlatform.git
把下載下來的東西(如果是壓縮包則解壓縮好)拖到專案目錄(上文提到過)中,專案目錄中應基本(我會更新)如下所示:
執行專案目錄中的update.py
(其實雙擊執行也可以),選擇update config,根據提示輸入內容
* TOKEN即微信公眾平臺一節中提到的Token
* APP_ID與SECRET_KEY對應微信公眾平臺一節中提到的AppId與AppSecret
* TULING_KEY對應文首提到的Tuling key
下面我們把需要展示的文章進行設定(之後的設定方法也是這樣)
進入articles資料夾,按照欄目名建立txt檔案,預設即兩個欄目:測試、工具集
每個txt檔案中放置微信文章的網址(裝一個PC微信,手機將文章發給檔案傳輸助手,複製連結地址即可),這個地址其實可以做一些刪減,瀏覽器能瀏覽即可
txt檔案中靠下的網址將靠上展示(為了方便每次更新網址)
之後執行update.py
,選擇update articles,如果沒有出現Articles update succeeded
則修改顯示出的網址
python update.py
然後將專案上傳即可,還是執行update.py
,選擇upload to server,在彈出的視窗中按照提示輸入賬號、安全密碼(不是登入密碼)即可上傳成功。
至此,我們的本地檔案已經全部配置完成了。
開啟後臺
我們將微信公眾平臺一節中沒有點的提交點掉(如果失敗請檢查你的config.py
使用記事本開啟後內容是否正確,是否能訪問上文提到過的SAE應用地址)
如果失敗且無法修復,可以嘗試郵件聯絡我,聯絡方式可以在我的主頁找到。
點選伺服器配置右邊的啟用,你的微信平臺就可以使用了!
嘗試回覆你的微信平臺“幫助”試試看呀。
之後的配置
到這裡你的微信個人公眾號已經可以使用了,那麼之後怎麼新增文章呢?
很簡單,在articles
中通過新建一個命名為欄目名的文字檔案建立新的欄目,在文字檔案底部貼上微信文章的網址來新增文章。
之後上傳即可,上傳也就是執行update.py
後選擇upload to server,在彈出的視窗中按照提示輸入賬號、安全密碼(不是登入密碼)即可。
SAE配置入門
這一部分將以問題為導向簡單介紹SAE的配置。
專案的基本配置
使用新浪SAE其實和本地只用Python檔案執行你的專案非常類似。區別僅在於本地通過某個Python檔案啟動專案,而SAE上通過index.wsgi
告訴伺服器怎麼啟動專案。
這一點很容易理解,就拿一個flask專案為例好了,一般來說我們本地啟動的時候最簡單的方式是這樣的程式碼:
from flask import Flask
app = Flask(__name__)
app.run()
那麼相對應的SAE中要上傳的根目錄下的index.wsgi
就這樣寫:
import sae
from flask import Flask
app = Flask(__name__)
application = sae.create_wsgi_app(app)
是不是基本類似?Django稍複雜一些,但原理還是類似的。一般還會有一個配置檔案:
name: myproject
version: 1
使用第三方包
你只需要將需要的包下載到某個資料夾中然後告訴SAE第三方包在那裡即可。
例如我們以在根目錄下的vendor
目錄中下載requests包為例:
mkdir vendor
pip install -t vendor requests
然後通過在index.wsgi
的最開始增加這些程式碼,告訴SAE第三方包安裝的位置就可以了。
import sae
sae.add_vendor_dir('vendor')
css等檔案的載入
如果你的SAE用到了這些檔案,你會發現本地雖然能夠執行成功,但是SAE上卻無法載入。
其實就是地址發生了變化,我們告訴SAE這些東西怎麼找就可以了。
例如我的css和js檔案放在了app/static/
資料夾下面,那麼我們就在config.yaml
中加入這些配置:
- url: /static
static_dir: app/static
專案的上傳
SAE上專案的上傳和普通的使用git上傳專案類似,只是分支名會有小小的變化。
一般而言如下命令即可完成上傳:
git add --all .
git commit -m "Update"
git push origin master:1
所以如果處於自動化考慮,Windows下可以寫一個這樣的批處理檔案:
git add --all .
git commit -m "%date%%time%"
git push origin master:1
pause
結語
如果這篇文章幫助到你,歡迎你在Github上Follow我(littlecodersh)或者Star我的專案。
如果有什麼問題或者建議,也歡迎郵件或者提出Issue與我交流。
LittleCoder
160503