开发python库_轻松实现python搭建公众平台本⽂主要是⼀步⼀步教⼤家如何利⽤python搭建公众平台,有兴趣的朋友可以参考⼀下
使⽤的⼯具,python 新浪SAE平台,的公众平台
你需要先在的公众平台与新浪SAE平台上各种注册,平台注册的时候需要你拍张⼿持⾝份证的照⽚,还有⼏天的审核期
等待公众审核通过后,登录公众平台后,点击⾼级功能。将会看到需要提供⼀个接⼊信息:
接⼝配置
那么我们需要⼀个⽹址作为接⼝(这时就需要SAE上搭建Python的⼀个应⽤),Token呢,就是相当于我们和之间约定的“密码”,这⾥可以随便填写英⽂或者数字,但实测输⼊纯数字有时会有问题,所以还是字符串⽐较靠谱。
第⼀步,在SAE上搭建python的应⽤,在下图的应⽤⾥选择python应⽤。
填好⼆级域名和应⽤名称等,选择好语⾔。这⾥我们使⽤Python开发选择web应⽤。创建好应⽤之后,在代码管理中创建⼀个新的版本。⽽后我们可以选择编辑代码。能够实现在线编辑,根本⽤不着配置本地环境,SVN等等。当然像这种轻量级的应⽤在线编辑器就可以
了,SVN的话还不如在线编辑好⽤
第⼆步,编写index.wsgi
因为我们使⽤的是web.py框架,因为其良好的xml解析。
⾸先编写config.yaml
name: yangyanxing
version: 1
libraries:
- name: webpy
version: "0.36"
- name: lxml
version: "2.3.4"
.
..
注意严格的缩进,差⼀个空格你就废了!⽽且调试的时候很不好发现问题。。。
接着我们继续编写index.wsgi
# coding: UTF-8开发程序
import os
import sae
import web
from weixinInterface import WeixinInterface
urls = (
'/weixin','WeixinInterface'
)
app_root = os.path.dirname(__file__)
templates_root = os.path.join(app_root, 'templates')
render = der(templates_root)
app = web.application(urls, globals()).wsgifunc()
application = ate_wsgi_app(app)
简单解释⼀下,
from weixinInterface import WeixinInterface
这⾥我们需要再创建⼀个weixinInterface的py⽂件,你也可以将这个类写在index.wsgi⽂件中,只是这样看起来会乱乱的新建⼀个weixinInterface.py⽂件,注意⼤⼩写,写⼊以下代码
# -*- coding: utf-8 -*-
import hashlib
import web
import lxml
import time
import os
import urllib2,json
from lxml import etree
class WeixinInterface:
def __init__(self):
self.app_root = os.path.dirname(__file__)
def GET(self):
#获取输⼊参数
data = web.input()
signature=data.signature
timestamp=data.timestamp
hostr
#⾃⼰的token
token="yangyanxing" #这⾥改写你在公众平台⾥输⼊的token
#字典序排序
list=[token,timestamp,nonce]
list.sort()
sha1=hashlib.sha1()
map(sha1.update,list)
hashcode=sha1.hexdigest()
#sha1加密算法
#如果是来⾃的请求,则回复echostr
if hashcode == signature:
return echostr
这⾥定义了⼀个GET⽅法,是根据公众平台的要求,进⾏的token验证,因为这⾥我们定义了templates_root为根⽬录下的templates,所以还要在根⽬录下创建⼀个⽬录templates的⽬录
因为是将验证信息GET发出去的,所以这⾥使⽤了GET⽅法来取得值并且返回相应⽤值
保存全部,现在回到的公众平台⾼级管理界⾯
接⼝配置
第三步,新建⼀个简单的⾃动回复的⽅法,鹦鹉学⾆,就是⽤户说什么,它也回复什么,没什么⽤,只是随便玩玩!
在weixinInterface.py⾥继续添加代码
def POST(self):
str_xml = web.data() #获得post来的数据
xml = etree.fromstring(str_xml)#进⾏XML解析
content=xml.find("Content").text#获得⽤户所输⼊的内容
msgType=xml.find("MsgType").text
fromUser=xml.find("FromUserName").text
toUser=xml.find("ToUserName").text
ply_text(fromUser,toUser,int(time.time()),u"我现在还在开发中,还没有什么功能,您刚才说的是:"+content)这个def 是和上⼀个GET同级的,注意缩进
接着我们在templates⽬录下创建l模板⽂件,写⼊以下代码
$def with (toUser,fromUser,createTime,content)
$createTime
注意这⾥的toUser与fromUser是刚才post的是相反的,因为这⾥的toUser也就是POST函数⾥的fromUser,这⾥的fromUser也就是POST函数⾥的toUser,msgType是text
全部保存,现在就在⽤你的个⼈关注⼀下你创建的,然后随便输⼊些内容,如果没有什么问题,你将会收到⼀条鹦鹉学⾆的回复内容!
以上就是python搭建公众平台的全部内容,⼤家可以根据以上步骤进⾏搭建。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。