最近开发微信接口,配合开发弄了这个微信服务端的模拟以方便调试。
# -*- coding: utf-8 -*- #/usr/bin/env python __version__ = '0.1' __author__ = 'http://weibo.com/wtmmac' ''' 微信Server模拟 ''' import sys, urllib, httplib, time, hashlib, random # 配置 interface_url = 'www.xxx.net' interface_path = '/interface/weixin.php' Token = 'weixin' messages = { # 用户关注消息 'subscribe' : '''<xml><ToUserName><![CDATA[测试服务帐号]]></ToUserName> <FromUserName><![CDATA[小黑]]></FromUserName> <CreateTime>123456789</CreateTime> <MsgType><![CDATA[event]]></MsgType> <Event><![CDATA[subscribe]]></Event> <EventKey><![CDATA[EVENTKEY]]></EventKey> </xml>''', # 用户发送文本信息 'text': '''<xml> <ToUserName><![CDATA[测试服务帐号]]></ToUserName> <FromUserName><![CDATA[小黑]]></FromUserName> <CreateTime>1348831860</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[周杰伦]]></Content> <MsgId>1234567890123456</MsgId> </xml>''' } def make_post(action): '''模拟用户行为产生的消息提交给接口程序''' conn = httplib.HTTPConnection(interface_url) headers = { "Content-type": "text/xml", "Content-Length": "%d" % len(messages[action])} # 生成签名相关变量 timestamp = int(time.time()) nonce = random.randint(1,100000) signature = makeSignature(Token, timestamp, nonce) params = urllib.urlencode({'signature': signature, 'timestamp': timestamp, 'nonce': nonce}) conn.request("POST", interface_path + "?" +params, "", headers) conn.send(messages[action]) response = conn.getresponse() print response.status, response.reason print response.read() conn.close() def makeSignature(Token, timestamp, nonce): '''生成签名''' try: Token = int(Token) except Exception, e: pass sorted_arr = map(str, sorted([Token, timestamp, nonce])) sha1obj = hashlib.sha1() sha1obj.update(''.join(sorted_arr)) hash = sha1obj.hexdigest() return hash def listAction(): print("======Supported actions:======") for i in messages.keys(): print(i) print("==============================") if __name__ == '__main__': if len(sys.argv) < 2: print (u"Please input your action") listAction() else: if (messages.has_key(sys.argv[1])): make_post(sys.argv[1]) else: print("No this action") listAction()
相关推荐
使用这个小工具_微信开发调试小工具,就可以解决这个问题了,即使是超时(微信服务端只给了5秒时间),也不用怕了,当然不超时最好了。 微信开发调试工具: 1.请求网址 请求网址输入你在公众平台开发模式下的那个...
由于香哈菜谱没有免费对外开发api,所以只有模拟服务端提供的香哈头条列表的数据,有了数据,页面才能动态地进行渲染。 9.香哈头条里有菜谱的图片、美食名称、分类、浏览数量以及评论数量,因为香哈头条列表信息在很...
一款模仿微信的IOS聊天源码.详细的源码,不包含服务端.
> 最近跟小伙伴一起开发微信小程序, 发现在内容显示这块没法很好的解析。所以记录了下 查看效果 下载项目,在小程序工具新建项目选择开发文件夹。 注意:新建项目不使用appId, 在项目配置中勾选:开发环境不校验...
毕业设计,微信小程序,基于PHP+MySql开发的微信小程序医院预约挂号系统,内含服务端和小程序客户端,完整源代码,数据库脚本 基于微信小程序医院预约挂号系统PHP后端接口 开发软件:Idea/Vscode等都可以 + 微信...
通过Node.js搭载服务器来接收微信小程序获取到的code,与前面在客户端模拟服务端是不同,通过前后分离,通过客户端使用wx.login拿到code参数之后向后端发起请求http://127.0.0.1:3000/getOpenId,后端响应请求后并...
遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施...
cc254x集成微信AirSync的demo,这是客户端的demo。服务端的使用官方的即可。模拟开关灯已经调通。注意,demo里面的好像是非加密模式,并且核心代码是封装了的,不要问我,我也没核心代码。
在服务端层面,主要是依据微信小程序的特性,模拟攻击者从SQL注入、越权访问、文件上传、CSRF以及信息泄露等漏洞方面进行测试,这个其实与常规的web安全测试类似。 本此主要是对客户端测试的总结,包括操作流程,所...
基于STM32、ESP8266、EMQX和Android的智能家居系统,包括服务端,安卓APP,微信小程序,设备端 项目工作 硬件选型,硬件连线,传感器数据采集,数据封装上行,下行数据解析,服务器搭建,Android APP开发与调试 ...
遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施...
模拟微信读书小程序做成一个安卓客户端的小程序,运行时需要先把服务端跑起来,然后将客户端导入Android Stdio,在value->string.xml中把IP地址改成本机的 ip地址即可,
遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施...
教你微信怎么投票快~原理 刷票的原理很简单,就是相当于模拟人登录网站去投票,只是把这个过程程序化,让程序代替人到网站去投票。具体一点说把,首先是客户端(我们)发出请求(Request)给服务端(投票网站),...
1.睡眠常识(后台服务端提供常识数据,前台展示常识数据)轻松获取睡眠知识,掌握健康资讯,提高对睡眠的重视。压力大,酗酒,宵夜,失眠?多喝水,睡得好,吃嘛嘛香,体重记录明显降低。 2.睡眠音乐(本地存放一些助...
移动端主要功能:登录、注册、订餐(支付方式为模拟支付)、订单管理、订单评价、用户信息管理、收货地址管理、地图定位、视频监控、送餐导航、智能客服助手(图灵机器人)、二维码扫描、微信分享、App扫码下载、...
微信小程序-模拟微票小程序(wangmingjob/weapp-weipiao)
首先,我试了一下以前的过期的证书,在开发者工具里模拟的时候可以正常访问接口,在手机里测试时候微信小程序的wx.request是会报SSL握手失败的错误(request error : request: fail ssl hand shake error),所以只能...
遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施...
模拟实现微信扫描二维码登录PC网站 Login to a PC website by scan a qr code with an APP like wechat on your smartphone 技术关键字(Keywords):Android APP QRcode nodejs comet 使用方法(Usage): 在你的安卓...