使用python怎么开发一个微信公众号?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
一、注册个微信公众号,这个就不详细说了。
二、登录后台,进入开发中的基本配置,配置下服务器
填写url和token,url是服务器的地址,token是自己定义的
三、登录服务器开发
网上很多教程用的什么新浪sae啊,webpy都是很久之前的。现在很多东西都变了,所以我没有用,我用的阿里的服务器以及flask做后端。
代码如下
# coding:utf-8 from hashlib import sha1 from flask import Flask, request token = 'xxxxxx' app = Flask(__name__) def get_update(token, timestamp, nonce): arguments = '' for k in sorted([token, timestamp, nonce]): arguments = arguments + str(k) m = sha1() m.update(arguments.encode('utf8')) return m.hexdigest() def check_signature(): signature = request.args.get('signature', '') timestamp = request.args.get('timestamp', '') nonce = request.args.get('nonce', '') check = get_update(token, timestamp, nonce) return True if check == signature else False def parse_xml(data): try: import xml.etree.cElementTree as ET except ImportError: import xml.etree.ElementTree as ET root = ET.fromstring(data) datas = '<xml>' for child in root: if child.tag == 'ToUserName': toUser = child.text datas += '<FromUserName>%s</FromUserName>' % toUser elif child.tag == 'FromUserName': fromUser = child.text datas += '<ToUserName>%s</ToUserName>' % fromUser else: datas += '<' + child.tag + '>' datas += child.text datas += '</' + child.tag + '>' datas += '</xml>' return datas @app.route('/weixin', methods=['GET', 'POST']) def weixinInterface(): if check_signature: if request.method == 'GET': echostr = request.args.get('echostr', '') return echostr elif request.method == 'POST': data = request.data msg = parse_xml(data) return msg else: return 'signature error' if __name__ == '__main__': app.run(host='0.0.0.0')
看完上述内容,你们掌握使用python怎么开发一个微信公众号的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。