基于Django、WeRoBot的微信公众平台开发(一)

* 该教程基于第三方微信公众号开发框架 WeRoBot
* 该教程在已有Django项目上开发,即在一个已上线网站项目中集成微信公众平台后台
* 你需要有一个VPS/云服务器

今天突发奇想,打算申请一个微信公众账号玩玩,以便同步博客上的一些文章。

由于在学python,于是打算用Python来开发微信公众号的后台。

为了方便开发,我在github上寻找微信公众号开发的框架,最后锁定了 WeRoBot

下面我将使用WeRoBot搭建一个简单的微信公众号后台,并集成在一个已上线的Django网站项目中。

废话不多说了,我们开始吧!

注册一个微信公众账号

首先我们要有一个微信公众号,申请过程很简单。

注册位置:微信公众账号 - 注册

注册一个 订阅号/个人 ,填写 公众号名称,具体注册过程这里不赘述。

注册成功之后,可进入微信公众号后台:

微信公众号后台

配置开发者页面

点击 开发 -> 基本配置,进入开发者页面

首先在 开发者ID 栏目中生成你的 AppSecret(应用密钥),记下你的AppID和AppSecret,后面验证身份的时候会用到。

然后修改你的 服务器配置,点击后面的 修改配置,填写你的服务器配置。

服务器配置

这里你需要自定义你的 URLToken

  • URL是你的微信公众号后台地址,客户端所有的请求都会发到这个地址上,你需要编写后台程序响应这些请求。

  • Token是用来验证你的开发者身份的,只有通过了身份验证,后台程序才能生效。

注意:URL一栏中 /robot/ 不要写成 /robot,否则会无响应。

配置好之后先不要点击提交,因为我们还没有写后台程序。

接下来我们就要请出WeRoBot来协助我们开发微信公众号的后台。

安装WeRoBot

执行代码

pip install werobot

安装过程

安装过程

在Django中集成基于WeRoBot的微信公众号后台

在Django中添加robot.py文件,负责响应微信客户端请求

响应微信客户端请求

代码:

  1 #coding=utf8
  2 from werobot import WeRoBot
  3
  4 robot = WeRoBot(enable_session=False,
  5                 token='yourtoken',
  6                 APP_ID='yourappid',
  7                 APP_SECRET='yourappsecret')
  8
  9 @robot.handler
 10 def hello(message):
 11     return 'Hello world'
 12

@robot.handler表示对任何消息都做回复,这里的代码表示所有请求都回复“hello world”。

在Django中修改url.py文件,将微信客户端的请求指向到robot.py

修改url.py文件

代码:

 16 from django.conf.urls import include, url
 17 from django.contrib import admin
 18
 19 from blog.views import index,archive,category,tag,article,search,board,about
 20 from django.conf import settings
 21 from blog.upload import upload_image
 22 from werobot.contrib.django import make_view
 23 from robot import robot
 24
 25 urlpatterns = [
 26     # 微信公众号响应页面
 27     url(r'^robot/',make_view(robot)),
 28

微信后台提交修改

微信后台的代码我们已经写好了,回到后台的服务器配置页面,点击 提交

微信后台提交修改

若token验证成功,会提示“提交成功”

提交成功

启动服务器配置

启动配置

启动配置

启动成功

启动成功

手机端验证

打开手机微信客户端,关注公众号,并回复任意消息。若收到 “hello world”,证明微信公众号后台已搭建成功。

微信公众号后台已搭建成功

下一篇

基于Django、WeRoBot的微信公众平台开发(二)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,497评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,253评论 19 139
  • 一、初始微信公众平台 微信公众平台,即我们平时所说的“公众号”,曾用名“官方平台”、“媒体平台”,但最终命名为“公...
    小风飞鱼阅读 7,869评论 4 25
  • 夜行列车 那霸在几次台风的影响下,终于进入了秋天。突然有一天下班出了大楼发现天竟然已经黑了。在夜幕中行驶的列车引起...
    西点师houland阅读 228评论 0 0
  • 热情像被秋风吹散一般 竟不觉消散的这样快 刚刚还海誓山盟 转眼就冷漠的犹如冰山 或许都是善变 又或许都存在两面 只...
    路人贾1阅读 124评论 0 1