python post方法登录微信公众号_python Django开发微信公众号(3)响应各种post请求

微信公众号post请求有很多,这里讲:

lif request.method == 'POST':

msg = parse_message(request.body)

if msg.type == 'text':#用户发送消息后自动回复,这里只讲了text,还有图片,视频,链接类的,都差不多

if msg.content == '查询':

pass

elif:

pass

elif msg.type == 'event':#事件

event = msg.event

if event == 'subscribe':#用户关注微信公众号

print(msg.key)

reply = ArticlesReply(message=msg)

reply.add_article({

'title': '测试',

'description': '测一哈',

'img':'image_url地址',

'url':'跳转地址url'

})

response = HttpResponse(reply.render(), content_type='application/xml')

return response

elif event == 'subscribe_scan':

#用户通过扫描二维码链接到公众号,这里分2种情况,一种是关注二维码,一种是扫描到活动二维码,这种情况下如果是活动二维码,那么用户的请求体里有scene_id参数,如果是关注公众号就没有

#event subscribe_scan

#scene_id带参数二维码 scene_id,去除了前缀 qrscene_

#ticket 带参数二维码 ticket

#二位码可以通过微信接口生成,生成代码再在文章最下方,

if msg.scene_id:#扫描公众号里的活动类二维

id = msg.scene_id

if id =='123':

reply = TextReply(content='我真的是逗你玩的', message=msg)

else:

reply = ArticlesReply(message=msg)

reply.add_article({

'title': '设计',

'description': '让',

'img':'',

'url':''

})

response = HttpResponse(reply.render(), content_type='application/xml')

return response

elif event == 'scan':#扫描二维码

id = msg.scene_id

if id =='123':

reply = TextReply(content='我是逗你玩的', message=msg)

response = HttpResponse(reply.render(), content_type='application/xml')

return response

elif:

pass

elif:

pass

else:

pass

elif event =='click':#点击事件

if msg.key == 'MUSIC':

reply = create_reply('说好不哭', message=msg)

response = HttpResponse(reply.render(), content_type='application/xml')

return response

elif:

pass

elif:

pass

else:

pass

else:

reply = create_reply('我什么都不知道,你放过我吧', message=msg)

response = HttpResponse(reply.render(), content_type='application/xml')

return response

这是生成二维码的代码:

from wechatpy import WeChatClient

def get_qrcode(limit_time, action_name, id):

client = WeChatClient("your appid", "your appsecret")

res = client.qrcode.create({

'expire_seconds': limit_time,

'action_name': action_name,

'action_info': {

'scene': {'scene_id': id},}})

url = client.qrcode.get_url(res)

return url

print(get_qrcode(3600, 'QR_SCENE', '123'))

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值