基于python的微信python 公众平台库二次开发 播放吗

第三方登录:12121人阅读
python(61)
& & 这两天将之前基于微信公众平台的代码重构了下,基础功能以库的方式提供,提供了demo使用的是django,看着之前为赶进度写的代码真的惨不忍睹,所以weixin-knife产生了,正如其名,提供的是必要的功能,而不是完整的应用。weixin-knife可以很方便的处理关注,取关注事件,处理文本消息,回复用户信息,jssdk处理,oauth认证,以及微信支付。github地址:。首先看看怎么用from .weixin import handler as HD
@HD.subscribe
def subscribe(xml):
return &welcome to brain&
@HD.unsubscribe
def subscribe(xml):
print &leave&
return &leave
brain&上面处理了关注和取关事件,通过装饰器处理的还算透明。处理文本消息,回复图文消息如下:@HD.text
def text(xml):
content = xml.Content
if content == &111&:
return {&Title&:&美女&, &Description&:&比基尼美女&, &PicUrl&:&/static/mm/uploads/-247.jpg&, &Url&:&/beauty/list?category=5&}
elif content == &222&:
[&比基尼美女&, &比基尼美女&, &/static/mm/uploads/-247.jpg&, &/beauty/list?category=5&],
[&长腿美女&, &长腿美女&, &/static/mm/uploads/-48.jpg&, &/beauty/list?category=8&]
elif content == &push&:
Helper.send_text_message(xml.FromUserName, &推送消息测试&)
return &push ok&
return &hello world&如何文本是111或222,我们回复图文消息,如何使push,我们使用客服接口推送消息,其它返回“hello world&一般我们会使用oauth网页授权获取用户的openid,如果是多个链接都需要通过oauth处理,代码会很难看,通过装饰器可以很好的处理这个问题。def sns_userinfo_callback(callback=None):
&&&网页授权获取用户信息装饰器
callback(openid, userinfo):
return user
def wrap(func):
@wraps(func)
def inner(*args, **kwargs):
request = args[0]
#django第一个参数request
openid = request.COOKIES.get('openid')
userinfo = None
if not openid:
code = request.GET.get(&code&)
if not code:
current = &http://&+ request.get_host() + request.get_full_path()
return redirect(WeixinHelper.oauth2(current))
data = json.loads(WeixinHelper.getAccessTokenByCode(code))
access_token, openid, refresh_token = data[&access_token&], data[&openid&], data[&refresh_token&]
#WeixinHelper.refreshAccessToken(refresh_token)
userinfo = json.loads(WeixinHelper.getSnsapiUserInfo(access_token, openid))
ok, openid = Helper.check_cookie(openid)
if not ok:
return redirect(&/&)
request.openid = openid
if callable(callback):
request.user = callback(openid, userinfo)
response = func(request)
return response
return inner
return wrap
sns_userinfo = sns_userinfo_callback()在所有需要用户openid的函数前使用sns_userinfo装饰器就可以了,callback函数接收openid,userinfo,返回用户实例,这样就可以使用request.user获取当前用户@sns_userinfo
def oauth(request):
&&&网页授权获取用户信息&&&
resp = HttpResponse(request.openid)
resp.set_cookie(&openid&, Helper.sign_cookie(request.openid))
return resp使用oauth需要保存cookie,不然每次用户请求都需要授权,需要走一遍完整的oauth流程,拖慢整体响应。weixin-knife提供了微信支付支持,稍微修改我之前移植的官方PHP版本,@sns_userinfo
def pay(request):
response = render_to_response(&pay.html&)
response.set_cookie(&openid&, Helper.sign_cookie(request.openid))
return response
@sns_userinfo
def paydetail(request):
&&&获取支付信息&&&
openid = request.openid
money = request.POST.get(&money&) or &0.01&
money = int(float(money)*100)
jsApi = JsApi_pub()
unifiedOrder = UnifiedOrder_pub()
unifiedOrder.setParameter(&openid&,openid) #商品描述
unifiedOrder.setParameter(&body&,&充值测试&) #商品描述
timeStamp = time.time()
out_trade_no = &{0}{1}&.format(WxPayConf_pub.APPID, int(timeStamp*100))
unifiedOrder.setParameter(&out_trade_no&, out_trade_no) #商户订单号
unifiedOrder.setParameter(&total_fee&, str(money)) #总金额
unifiedOrder.setParameter(&notify_url&, WxPayConf_pub.NOTIFY_URL) #通知地址
unifiedOrder.setParameter(&trade_type&, &JSAPI&) #交易类型
unifiedOrder.setParameter(&attach&, &6666&) #附件数据,可分辨不同商家(string(127))
prepay_id = unifiedOrder.getPrepayId()
jsApi.setPrepayId(prepay_id)
jsApiParameters = jsApi.getParameters()
except Exception as e:
print jsApiParameters
return HttpResponse(jsApiParameters)
FAIL, SUCCESS = &FAIL&, &SUCCESS&
def payback(request):
&&&支付回调&&&
xml = request.raw_post_data
#使用通用通知接口
notify = Notify_pub()
notify.saveData(xml)
#验证签名,并回应微信。
#对后台通知交互时,如果微信收到商户的应答不是成功或超时,微信认为通知失败,
#微信会通过一定的策略(如30分钟共8次)定期重新发起通知,
#尽可能提高通知的成功率,但微信不保证通知最终能成功
if not notify.checkSign():
notify.setReturnParameter(&return_code&, FAIL) #返回状态码
notify.setReturnParameter(&return_msg&, &签名失败&) #返回信息
result = notify.getData()
if result[&return_code&] == FAIL:
notify.setReturnParameter(&return_code&, FAIL)
notify.setReturnParameter(&return_msg&, &通信错误&)
elif result[&result_code&] == FAIL:
notify.setReturnParameter(&return_code&, FAIL)
notify.setReturnParameter(&return_msg&, result[&err_code_des&])
notify.setReturnParameter(&return_code&, SUCCESS)
out_trade_no = result[&out_trade_no&] #商户系统的订单号,与请求一致。
###检查订单号是否已存在,以及业务代码
HttpResponse(notify.returnXml())pay.html就是使用WeixinJSBridge.invode调用
$.post(&/paydetail&,{
money: $momey
},function(data){
var jsonobj = eval('('+data+')');
WeixinJSBridge.invoke('getBrandWCPayRequest', {
&appId& : jsonobj.appId, //公众号名称,由商户传入
&timeStamp& : jsonobj.timeStamp, //时间戳
&nonceStr& : jsonobj.nonceStr, //随机串
&package& : jsonobj.package,//扩展包
&signType& : &MD5&, //微信签名方式:1.sha1
&paySign& : jsonobj.paySign //微信签名
);由于access_token, jsapi_ticket需要缓存,而缓存方式又依赖于具体环境,所以提供了一个Helper类,使用了django 的cache缓存。class Helper(object):
&&&微信具体逻辑帮组类&&&
@class_property
def access_token(cls):
key = &ACCESS_TOKEN&
token = cache.get(key)
if not token:
data = json.loads(WeixinHelper.getAccessToken())
token, expire = data[&access_token&], data[&expires_in&]
cache.set(key, token, expire-300)
return token
@class_property
def jsapi_ticket(cls):
key = &JSAPI_TICKET&
ticket = cache.get(key)
if not ticket:
data = json.loads(WeixinHelper.getJsapiTicket(cls.access_token))
ticket, expire = data[&ticket&], data[&expires_in&]
cache.set(key, ticket, expire-300)
return ticketclass_property提供了类级别的property,当然实例也是可以用的。class class_property(object):
&&& A property can decorator class or instance
class Foo(object):
@class_property
def foo(cls):
print(Foo.foo)
print(Foo().foo)
def __init__(self, func, name=None, doc=None):
self.__name__ = name or func.__name__
self.__module__ = func.__module__
self.__doc__ = doc or func.__doc__
self.func = func
def __get__(self, obj, type=None):
value = self.func(type)
return value使用weixin-knife助力公众平台开发,你完全可以稍加修改用于flask等其它web框架。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:715758次
积分:7671
积分:7671
排名:第1776名
原创:115篇
转载:11篇
评论:273条
Python技术交流群
阅读:44460
文章:17篇
阅读:141905
阅读:35071
(2)(1)(2)(1)(4)(2)(2)(1)(2)(2)(2)(4)(2)(1)(2)(6)(4)(5)(3)(1)(3)(7)(5)(1)(1)(3)(3)(2)(5)(4)(7)(7)(11)(8)(7)(5)(1)微信平台python开发视频教程18下载多媒体_图文_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
微信平台python开发视频教程18下载多媒体
||文档简介
总评分0.0|
&&北​风​网​p​y​t​h​o​n​视​频​教​程​《​基​于​P​y​t​h​o​n​的​微​信​公​众​平​台​二​次​开​发​》​(​P​y​t​h​o​n​常​用​框​架​、​订​阅​号​开​发​、​公​众​号​开​发​)​,​初​级​,2​课​时​,​用​到​技​术​:​p​y​t​h​o​n​,​p​y​t​h​o​n​视​频​教​程​涉​及​项​目​:​微​信​公​众​平​台​。​本​p​y​t​h​o​n​视​频​教​程​基​于​p​y​t​h​o​n​和​S​A​E​平​台​,​由​易​到​难​,​深​入​浅​出​的​讲​解​微​信​公​众​平​台​各​种​常​见​功​能​的​开​发​,​包​括​接​口​验​证​,​基​本​消​息​回​复​,​自​定​义​菜​单​,​服​务​号​高​级​接​口​,​w​s​g​i​环​境​,​p​y​t​h​o​n​常​用​框​架​b​o​t​t​l​e​、​w​e​b​p​y​、​d​j​a​n​g​o​,​分6​节​小​课​程​,​时​长​合​计小​时​。
大小:200.00KB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢Python用于BIM(Revit等)软件二次开发效率及体验如何?
Revit软件接触了一些,掌握比较好的语言是Python,想了解一下Python用于二次开发的的体验如何,希望有前辈能指点一下,除Python外,如果有其它合适的语言(C#,)也请写下宝贵的答案.另对于二次开发方面完全没有接触过,希望能做一下引导,少些弯路.热爱学习的大二学生,以后有问题想到再补充(未经允许请不要随意编辑问题),谢谢.
按投票排序
Python用于BIM(Revit等)软件二次开发?没听过啊。Revit的二次开发,这个人比较活跃Revit的二次开发语言Bentley的二次开发你在这问也会有人回复你。Microstation二次开发语言
正如所说的那样,Revit二次开发确实主要用C#。不过你要用Python也可以,在这里看到没,不仅可以用Python,Ruby都可以。不过,用Python写一些小的宏命令还好,真正做二次开发还是用C#这种官方推荐的语言吧~看到没,不仅可以用Python,Ruby都可以。不过,用Python写一些小的宏命令还好,真正做二次开发还是用C#这种官方推荐的语言吧~
revir二开一般都是c#。py适合dynamo用户。把玩list和正则表达式就够了。
我是Python非脑残粉,每天都会用Python处理数据和写一些小项目。另外之前课程设计做过一点cad和revit二次开发,综合下来我个人认为还是用C#比较好。Autodesk产品毕竟是.Net这个体系的,使用.Net系的语言如C#能得到最好的支持。C#作为静态类型的编译语言,不仅语言提示丰富、重构便捷,性能也比Python会好很多。而且学C#相当于同时学习面向对象的思想,顺便学了Java的基础,从知识结构上来说收益是不错的。cad和revit都有一套庞大的对象模型,从面向对象设计的思想去理解这些模型,探讨和利用对象之间的逻辑关系,是学习二次开发的核心任务。所以专门找面向对象编程乃至UML的书来研读,会很有帮助。此外若能掌握一些C语言(主要是指针,可以帮助理解struct和class的差别)、算法和操作系统的基本概念,也是不错的plus。
你搜一下Dynamo for Revit,一定会喜欢的
已有帐号?
无法登录?
社交帐号登录收藏成功!
您可在用户中心,查看
培训方式:
&>>&东方大厦13室
电&&&话:400-018****
查看完整号码
查看联系方式
&400-018-6216
微信扫一扫快速获取电话
联系我时说明在列表网看到,说不定有意外惊喜哟!
温馨提示:
请确定对方的培训资质,以防“包过”等夸大宣传或虚假信息;
任何要求预付定金、汇款等方式均存在风险,谨防上当受骗。
基于Python的微信公众平台二次开发(Python常用框架、订阅号开发、公众号开发)
/goods-457.html
课程讲师:易伟
课程分类:Python
适合人群:初级
课时数量:12课时
更新程度:完成
用到技术:python
涉及项目:微信公众平台
微信公众平台的火热程度已经不用多言,无论是个人还是企业,政府还是商家,都已经开始搭建微信公众平台,微信的作用已经被各界人士认可。
微信公众平台的技术需求市场缺口巨大。同时python语言排名一直稳定在世界前十位,特别是国外多把python作为编程入门语言,以微信应用作
为python入门学习的对象,避免了枯燥的理论学习。
1.2、课程内容简介
本课程基于python和SAE平台,由易到难,深入浅出的讲解微信公众平台各种常见功能的开发,包括接口验证,基本消息回复,自定义菜单,
服务号高级接口,wsgi环境,python常用框架bottle、webpy、django,分46节小课程,时长合计8小时。
1.3、课程大纲
1.微信公众平台基础篇
(1)微信公众平台接口验证
(2)python开发工具Sublime Text
(3)文本回复
(4)接收消息
(5)被动回复消息
(6)xml格式的API
(7)Json格式API
(8)mysql数据库
(9)二级菜单
(10)静态目录
(11)动态网页
(12)模糊匹配
(13)正则表达式
(14)Beautiful Soup
2.微信公众平台高级接口
(15)token和缓存
(16)自定义菜单
(17)回复图片
(18)下载多媒体
(19)客服接口
(20)人工客服
(21)带参数二维码
(22)语音地理
(23)用户信息
(24)分组及列表
(25)网页授权1
(26)网页授权2
3.bottle框架
(27)bottle框架1
(28)bottle框架2
(29)bottle框架3
4.webpy框架
(30)webpy框架1
(31)webpy框架2
(32)webpy框架3
(33)webpy框架4
5.django框架
(34)django框架1
(35)django框架2
(36)django框架3
(37)django框架4
(38)django框架5
(39)django框架6
(40)django框架7
(41)django框架8
(42)自媒体订阅号开发
(43)查询类订阅号开发
(44)问答类微信号开发
(45)叫号类服务号开发
(46)会员类服务号开发
联系我时,请说是在列表网栏目上看到的,谢谢!
小贴士:Python的微信公众平台二次开发实战教程信息由列表网网友发布,其真实性及合法性由发布人负责。列表网仅引用以供用户参考。详情请阅读列表网免责条款。
狮岭镇淘宝开店运营、淘宝美工培训、淘宝推广运营培训、阿里巴巴开店运营培训、淘宝摄影培训。咨询热线: 陈老师 QQ/微信在线:淘宝成功开店课程会学习到整个淘宝操作流程,学习六大课程内容,开店装修-排名优化-店铺优化-运营推广-手机淘宝-金牌后勤!先教学员如何成功开好网店,网店的产品上传,宝贝的描述,网店的装修,网店的简单推广运营,排名优化,还会学习到手机淘宝以及微淘的操作流程。 学完成果:系统掌握网店操作、网店运营、排名优化、推广策略、客服等实用性技能。通俗点说:从你没有店铺,到有店铺,熟悉店铺操作,让店铺有销量。 淘宝推广运营学习到八大模块,1、市场分析 2、直通车-淘宝客-钻石展位的使用技巧 3、第三方官方活动的参与和筹备 4、淘宝后台数据分析 5、爆款打造方法 6、天天特价参与方式 7、网店宝贝排名优化 8、刷单技巧、网店的针对性辅导,有效提高学员网店销量。学完成果:掌握淘宝运营方法和技巧,教会你如何获得流量,如何提高店铺转化率,合理调整客单价。从而全面提高你的店铺销量。销量=流量*转化率*客单价 电商淘宝美工就业班课程主要学习图片美化,图片处理,抠图,图片合成,熟练PS和DW软件的工具操作,掌握网店的装修以及排版等内容,掌握网店精修精调,网店页面详情,宝贝详情,动态图设计,logo设计,模板图设计,推广图设计,创意设计,平面设计,页面设计等内容电商美工就业进阶班课程内容:在掌握好就业班课程所有学习内容,增加产品分析实操、首页规划实操、规划买家浏览路径、产品详情实操、高点击率图设计、产品测试与反馈。学完成果:深入了解美工流程,掌握美工工作流程,胜任美工工作。 阿里巴巴培训课程包括:入门基础—店铺装修—站内搜索优化—营销工具使用—数据分析与多店运营—阿里巴巴诚信通熟
针对人群:想自己创业 、想另开渠道工厂 、有自己档口课程优势:一站式操作、理论实操结合 、关键位置排名、页面制作! 淘宝摄影培训课程介绍:本课程面对淘宝卖家学员、专业摄影师入门及摄影爱好者;特别针对电商行业摄影特点展开教学;教学覆盖范围广,知识点覆盖精准。课程目标:熟练掌握网店产品的拍摄技巧(重点是包包静物拍摄),逐渐获取电商产品、人物等拍摄技巧,使你拥有一首原创产品资料,为打造个性、漂亮、精美的网店奠定坚实的基础。课程特色:小班制集中授课,切身案例讲解,一对一手把手小班化影棚实训教学,让学员在课程学习结束时完美提升自我的摄影水平。更多课程学习内容、上课时间、课程价格。可以电话咨询我!欢迎你的来电哦!
狮岭镇电脑、全能文员、淘宝运营培训,咨询热线: 陈老师 QQ/微信在线: 初级电脑软件课程: 英文、拼音、五笔打字;WINDOWS系统平台、控制面板、资源管理器、EXCEL制表、数据库、图表分析、函数;WORD排版与编程、图文混排、POWERPOINT幻灯片制作、产品演示、动画。
初级电脑应用课程: 实用:表格设计技巧、企业文件排版技巧;工具:打印机、传真机、扫描仪、复印机等。网络QQ邮件、收发E-MAIL、网上学习/求职;维护、硬件识别、系统安装、病毒查杀、优化。 跟单算料文员培训 才聚培训(狮岭镇政府唯一授权培训机构)中国轻工业特有工种培训基地 针对皮具箱包行业对办公室职员人才的缺乏,才聚培训开设了皮具箱包专业文职培训班,为欲从事或正从事手袋行业的有志之士提供学习平台。 才聚皮具箱包岗位技能:报价-制单、算料;跟单文员培训,老师从事箱包、手袋行业多年具有丰富的实战经验,课程自主研发,是非常贴近企业用人需求,学员经考核毕业后由才聚推荐就业,避免生手难找工作的难题。你还在犹豫什么,赶快报名加入,挑战您的职业“薪”涯!前途、前途,一箭双雕!
随到随学、一人一机、全新液晶电脑、独特教材。根据企业用人要求展开的电脑培训,学习电脑最实在,最有用的东西,方便学员轻松就业!学员免费推荐就业!才聚初级电脑培训班欢迎您的加入!学不会可永久免费复训,直到学会为止。
狮岭镇才聚电商淘宝培训中心淘宝成功开店课程会学习到整个淘宝操作流程,学习五大课程内容,先教学员如何成功开店好网店,网店的产品上传,宝贝的描述,网店的装修,网店的简单推广运营,排名优化,还会学习到手机淘宝的操作流程淘宝推广运营学习到八大模块,1、市场分析 2、直通车-淘宝客-钻石展位的使用技巧 3、第三方官方活动的参与和筹备 4、淘宝后台数据分析 5、爆款打造方法 6、天天特价参与方式 7、网店宝贝排名优化 8、刷单技巧、网店的针对性辅导淘宝美工初级课程主要学习图片美化,图片处理,抠图,图片合成,熟练PS和AI软件的工具操作,掌握网店的装修以及排版等内容淘宝美工中级课程主要学习六大美工设计软件(PS,AI,DW,PR,SAI,CDR),网店精修精调,网店页面详情,宝贝详情,动态图设计,logo设计,模板图设计,推广图设计,创意设计,平面设计,页面设计等内容淘宝摄影培训课程介绍:本课程面对淘宝卖家学员、专业摄影师入门及摄影爱好者;特别针对电商行业摄影特点展开教学;教学覆盖范围广,知识点覆盖精准。课程目标:熟练掌握网店产品的拍摄技巧(重点是包包静物拍摄),逐渐获取电商产品、人物等拍摄技巧,使你拥有一首原创产品资料,为打造个性、漂亮、精美的网店奠定坚实的基础。课程特色:小班制集中授课,切身案例讲解,一对一手把手小班化影棚实训教学,让学员在课程学习结束时完美提升自我的摄影水平。更多课程学习内容和上课时间,可以电话咨询我!欢迎你的来电哦!
Python的微信公众平台二次开发实战教程 相关广告
& 列表网&京ICP证100421号&京ICP备号-1&琼公网安备08

我要回帖

更多关于 python 微信公众平台 的文章

 

随机推荐