用 Python 和 werobot 開發微信公眾號!

一、準備環境

1. 雲主機和域名

雲主機

推薦使用阿里雲或者騰訊雲的ecs主機,如果有學生證的話都很便宜。

域名

國內的話,在阿里雲或者騰訊雲購買都可以,國內域名都需要備案,備案按照文檔去做。

ssl證書

雲服務商一般都有免費的ssl證書申請,也可以使用let's encrypt的證書。

2. 公眾號測試賬號

在申請到認證公眾號之前,你可以先通過測試號申請系統,快速申請一個公眾號測試賬號,立即開始接口測試開發。

二、hello world例子

最簡單的Hello World, 會給收到的每一條信息回覆 Hello World

<code>import werobot

robot = werobot.WeRoBot(token='tokenhere')

@robot.handler
def hello(message):
    return 'Hello World!'

# 讓服務器監聽在 0.0.0.0:80
robot.config['HOST'] = '0.0.0.0'
robot.config['PORT'] = 80
robot.run()/<code>

#二、操作過程

1. 服務器上部署代碼

首先通過pip安裝werobot

<code>pip install werobot/<code> 

2. 創建hello world例子

<code>#coding:utf-8
# Filename:hello_world.py
# 驗證服務器,並且收到的所有消息都回復'Hello World!'

import werobot

robot = werobot.WeRoBot(token='your token')

# @robot.handler 處理所有消息
@robot.handler
def hello(message):
    return 'Hello World!'

# 讓服務器監聽在 0.0.0.0:80
robot.config['HOST'] = '0.0.0.0'
robot.config['PORT'] = 80
robot.run()/<code>

'your token' 處要填寫你自己的Token,要保證這個token跟公眾號平臺的token一致,然後運行。

3. 驗證服務器

用 Python 和 werobot 開發微信公眾號!

在公眾號的基本配置頁面填好配置信息,主要是url地址、token的填寫,點提交,如果沒報錯就驗證成功,最後點擊“啟用配置”。

三、原理解釋

  1. 微信公眾號開發其實就是web開發,多了些appId、appsecret等概念,多一些特殊的驗證過程。
  2. WeRoBot 會解析微信服務器發來的消息, 並將消息轉換成成Message 或者是Event 。Message 表示用戶發來的消息,如文本消息、圖片消息;Event 則表示用戶觸發的事件, 如關注事件、掃描二維碼事件。 在消息解析、轉換完成後, WeRoBot 會將消息轉交給Handler 進行處理,並將Handler 的返回值返回給微信服務器。
  3. 可以理解為,例子代碼中hello函數的理解最重要,可理解為,當收到用戶消息時,就進入函數,函數的返回結果會返回給微信服務器,微信服務器再轉發給當前的微信用戶。
  4. 實際效果為,用戶關注公眾號後,每次發消息,都收到'Hello World!'文本。四、練習題通過查文檔、瞭解robot.text, robot.filter註解的作用,把功能修改成,用戶發送'hello'時,服務器返回'Hello World!',其他時間返回'謝謝'文本。

後臺私信小編01獲取源代碼!


分享到:


相關文章: