
- 最近更新时间
- 2019年9月25日(iOS版)、2019/11/28(Android版) [7]
- 开发商
- 腾讯 [7]
- 软件授权
- 腾讯公司 [7]
- 软件名称
- 微信(WeChat)
- 总部地点
- 广东省广州市海珠区TIT创意园 [7]
- 软件特性
- 即时通讯社交软件 [7]
- 上线时间
- 2011年1月21日
- 软件版本
- 7.0.8(iOS版)、7.0.9(Android版) [7]
- 软件平台
- Windows、macOS、Android、iOS [7]
- 软件语言
- 中文、英文、韩文、日文等 [7]
- 软件大小
- 273.7 MB(iOS版)、126.71MB(Android版) [7]
-
微信公众平台开发入门
2015-01-06 11:21:27通过本课程的学习,学员能够入门微信公众平台开发,能够胜任企业级的订阅号、服务号、企业号的应用开发工作。 通过本课程的学习,学员能够对微信公众平台有一个清晰的、系统性的认识。例如,公众号是什么,它有... -
Python创建微信机器人
2019-04-20 09:30:44微信,一个日活10亿的超级app,不仅在国内社交独领风骚,在国外社交也同样占有一席之地,今天我们要将便是如何用Python来生成一个微信机器人,突然想起鲁迅先生曾经说过的一句话: 因为是微信机器人系列的第一篇...微信,一个日活10亿的超级app,不仅在国内社交独领风骚,在国外社交也同样占有一席之地,今天我们要将便是如何用Python来生成一个微信机器人,突然想起鲁迅先生曾经说过的一句话:
因为是微信机器人系列的第一篇文章,所以猪哥会特别详细的讲解每一地方,尽量使每一位想学习的同学都能顺顺利利的开始,下面就让我们一起来做些有趣的事吧!
如何监听别人的消息?如何实现放撤回?扫描下方二维码关注微信公众号「 裸睡的猪 」回复:微信机器人 即可获取教程!
一、项目介绍
1.微信库选择
python关于开发微信的库主要有
itchat
和wxpy
,而wxpy
底层是调用的itchat
,所以如果你只是要使用的话建议使用wxpy
库,它比其他的库都要优雅,更面向对象,而且深度整合了图灵机器人
和小i机器人
;而itchat
扩展性更好,如果你想自己开发一个自己的微信库那建议选itchat
。2.实现原理
我相信有不少同学使用过微信的网页版,而
wxpy
(底层使用itchat
)库就是模拟登录网页端,然后调用微信的api实现操作的,我们可以查看itchat
源码发现。
总之大家记住,目前wxpy
和itchat
都是模拟网页版微信来操作的。3.图灵机器人
既然可以模拟网页微信了,那又如何做到自动回复呢?这里我们就使用到了
图灵机器人
,大家可以在他们的官网(http://www.tuling123.com)免费注册账号,然后申请一个免费的机器人,每个人最多免费申请五个机器人。
我会在项目代码中给一个默认的apikey,让大家不用下载就可以尝试,但是还是建议自己去申请,因为这个默认的apikey有调用次数限制,况且这算是一笔免费的财富呢!4.整体流程
为了方便大家理解,猪哥给大家画了一个时序图
二、项目代码
先来张项目结构图压压惊:
1.下载项目
猪哥已经把项目放在了GitHub上,群里有小伙伴反馈不会使用github,这里我就详细讲一下如何从github上下载项目。
注意:github与git不是同一个东西,github是全球最大的同性恋交友论坛,在这里我们不比颜值与财富,只比谁的项目
star
多,star越多也就说明你越吸引同性的喜欢与爱慕,甚至连你的同事也会爱上你!而git是项目管理工具,github上的项目就是用git来管理,项目管理工具另一派系是svn。
首先找到你需要下载的项目,然后点击Clone or download
,然后点击右侧的复制按钮,猪哥这个项目的地址是:https://github.com/pig6/wxrobot
然后打开你的pycharm,选择CSV
->Checkout from version control
->git
,然后粘贴刚才复制的项目链接。
最后pycharm可能会提示你使用 新窗口打开 还是用 当前窗口 打开,猪哥一般习惯使用 新窗口(New Window) 打开,这样可以避免多个项目开发时造成混乱。2.下载wxpy库
项目下载下来之后,因为没有安装必须的库
wxpy
,pycharm可能会有如下提示,这时我们点一下install就可以。
如果没有出现安装库提示的话,我们可以在Setting
->Project
->Project Interpreter
里面添加wxpy
库。
或者使用以下命令下载wxpy
库,如果你是pip3则替换下面的pip。pip install -U wxpy -i “https://pypi.doubanio.com/simple/”
3.运行项目
你可以按右上角的绿色三角形按钮,也可以右键项目然后点击
run
。
运行之后弹出登录二维码,手机微信扫一扫点击确定登录即可和好友聊天。
三、总结
首先感谢大家的耐心阅读,考虑到有很多零基础的同学所以文章有点长。
猪哥来总结下这几天使用
wxpy
库开发微信机器人的一些感受吧!- 猪哥用自己的大号测试了一周,也没有出现被封的迹象,只要不发送大量的相同信息就没问题
- 即使出现被封也只是会限制你微信登录网页版,手机端不影响使用,正常使用大概一两周就自动解封
- 最好用小号测试,一年以内注册的微信号不可以登微信网页版,也就是说不能用测试
- 微信网页版有些功能位阉割了,比如:添加好友,拉人入群等,因为怕微商使用机器人到处作恶所以才阉割
- 目前只开发了一个功能,先让大家入门,后面的功能会慢慢丰富起来
- 目前wxpy基于微信网页登录,很多功能无法实现,后期考虑跟换成iPad登录
- 图灵机器人智商有待提高
- 最后感谢武亚飞同学提供的微信小号
wxpy官方文档:https://wxpy.readthedocs.io/zh/latest
获取源码:vx扫描下方二维码,关注vx公号「裸睡的猪」,回复:微信机器人 即可获取!
-
清除微信内置浏览器缓存
2018-08-22 21:19:44在做微信开发的时候(主要是微信内网页或者比较大型的手机网站)的时候,更改了页面代码,但是微信内置浏览器有缓存,还是之前的效果,影响调试,而且还死活清除不掉!!!!!怎么办? 我的第一想法是关闭手机的...在做微信开发的时候(主要是微信内网页或者比较大型的手机网站)的时候,更改了页面代码,但是微信内置浏览器有缓存,还是之前的效果,影响调试,而且还死活清除不掉!!!!!怎么办?
我的第一想法是关闭手机的微信进程,偶尔有效,但是大多数时候是无效的。
第二个方法,我还试过退出微信登录,然后退出微信(百度出来的方法,也不知道谁讲的),也是偶尔有用,大多数时候无效。
后来我想到一个百分之百有效的方法:Android有一个功能,那就是应用管理(一般在手机设置里边),在应用管理里边清除应用缓存!100%有效!(
如果是iphone请参考下面一个方法【废弃】)如下图:
另外,还有一种方式:来自百度经验 原文地址
ios使用此方法不适用,免得被各种喷
在微信任意对话框(随便找个订阅号即可),发送以下网址
debugx5.qq.com
ios微信 见https://blog.csdn.net/qq285679784/article/details/78258487?locationNum=4&fps=1
也可以直接用微信扫二维码
点击进入,然后就会出现一个类似浏览器的设置界面,这是QQ浏览器内核的设置界面
如图:
推荐下载
-
微信技术总监分享架构设计高清完整PDF版
2012-05-15 09:17:26在技术架构上,微信是如何做到的?日前,在腾讯大讲堂在中山大学校园宣讲活动上,腾讯广研助理总经理、微信技术总监周颢在两小时的演讲中揭开了微信背后的秘密。 -
微信小程序之授权登录(附完整源码)
2018-03-21 10:38:05个人博客上已经同步更新了文章,有目录索引,阅读起来比较方便,欢迎大家移步个人博客上读阅~ 个人博客地址:... 微信小程序之授权登录 一、前言 由于微信官方修改了 getUserIn...个人博客上已经同步更新了文章,有目录索引,阅读起来比较方便,欢迎大家移步个人博客上读阅~
个人博客地址:http://zwd596257180.gitee.io/blog/2019/04/15/wechat_applet_login/
微信小程序之授权登录
一、前言
由于微信官方修改了 getUserInfo 接口,所以现在无法实现一进入微信小程序就弹出授权窗口,只能通过 button 去触发。官方连接:https://developers.weixin.qq.com/community/develop/doc/0000a26e1aca6012e896a517556c01
二、实现思路
自己写一个微信授权登录页面让用户实现点击的功能,也就是实现了通过 button 组件去触发 getUserInof 接口。在用户进入微信小程序的时候,判断用户是否授权了,如果没有授权的话就显示授权页面,让用户去执行授权的操作。如果已经授权了,则直接跳过这个页面,进入首页。
三、界面简介
1.不带 tabBar
2.带 tabBar
四、源码
1.index.wxml
<view wx:if="{{isHide}}"> <view wx:if="{{canIUse}}" > <view class='header'> <image src='/images/wx_login.png'></image> </view> <view class='content'> <view>申请获取以下权限</view> <text>获得你的公开信息(昵称,头像等)</text> </view> <button class='bottom' type='primary' open-type="getUserInfo" lang="zh_CN" bindgetuserinfo="bindGetUserInfo"> 授权登录 </button> </view> <view wx:else>请升级微信版本</view> </view> <view wx:else> <view>我的首页内容</view> </view>
2.index.wcss
.header { margin: 90rpx 0 90rpx 50rpx; border-bottom: 1px solid #ccc; text-align: center; width: 650rpx; height: 300rpx; line-height: 450rpx; } .header image { width: 200rpx; height: 200rpx; } .content { margin-left: 50rpx; margin-bottom: 90rpx; } .content text { display: block; color: #9d9d9d; margin-top: 40rpx; } .bottom { border-radius: 80rpx; margin: 70rpx 50rpx; font-size: 35rpx; }
3.index.js
Page({ data: { //判断小程序的API,回调,参数,组件等是否在当前版本可用。 canIUse: wx.canIUse('button.open-type.getUserInfo'), isHide: false }, onLoad: function() { var that = this; // 查看是否授权 wx.getSetting({ success: function(res) { if (res.authSetting['scope.userInfo']) { wx.getUserInfo({ success: function(res) { // 用户已经授权过,不需要显示授权页面,所以不需要改变 isHide 的值 // 根据自己的需求有其他操作再补充 // 我这里实现的是在用户授权成功后,调用微信的 wx.login 接口,从而获取code wx.login({ success: res => { // 获取到用户的 code 之后:res.code console.log("用户的code:" + res.code); // 可以传给后台,再经过解析获取用户的 openid // 或者可以直接使用微信的提供的接口直接获取 openid ,方法如下: // wx.request({ // // 自行补上自己的 APPID 和 SECRET // url: 'https://api.weixin.qq.com/sns/jscode2session?appid=自己的APPID&secret=自己的SECRET&js_code=' + res.code + '&grant_type=authorization_code', // success: res => { // // 获取到用户的 openid // console.log("用户的openid:" + res.data.openid); // } // }); } }); } }); } else { // 用户没有授权 // 改变 isHide 的值,显示授权页面 that.setData({ isHide: true }); } } }); }, bindGetUserInfo: function(e) { if (e.detail.userInfo) { //用户按了允许授权按钮 var that = this; // 获取到用户的信息了,打印到控制台上看下 console.log("用户的信息如下:"); console.log(e.detail.userInfo); //授权成功后,通过改变 isHide 的值,让实现页面显示出来,把授权页面隐藏起来 that.setData({ isHide: false }); } else { //用户按了拒绝按钮 wx.showModal({ title: '警告', content: '您点击了拒绝授权,将无法进入小程序,请授权之后再进入!!!', showCancel: false, confirmText: '返回授权', success: function(res) { // 用户没有授权成功,不需要改变 isHide 的值 if (res.confirm) { console.log('用户点击了“返回授权”'); } } }); } } })
关于 TabBar 的处理,只需要把上面写好的页面设置到 app.json 里面即可。
4.github 下载
https://github.com/yyzheng1729/loginDemo
五、福利:微信小程序学习视频资源分享
需要以下微信小程序项目教学视频的,可以关注下面的公众号,回复 “小程序” 即可获取百度云分享链接!如果失效的话,可以在公众号上面私信我。
六、同类文章推荐阅读
-
微信公众平台java开发完整项目示例程序源码---图灵机器人 微信智能回复
2014-08-21 00:45:19本例中列出了微信公众平台开发的所有流程的代码,包括接收xml数据、解析xml数据、调用图灵机器人api接口获取智能回复内容、封装结果xml数据等,简单明了,不明之处可查看个人博客中的讲解。 -
1000多套微信小程序源码带后台+教程+不同行业的源码集合
2018-04-14 15:06:15都是些小程序源码,有的还有后台,适合小白、也适合学过了的、也适合做外包的,要的可以取...https://www.douban.com/group/topic/113284790/o2o微信小程序源码-专门针对o2o类别的小程序源码集合【更新整理中...】ht...都是些小程序源码,有的还有后台,适合小白、也适合学过了的、也适合做外包的,要的可以取下学习了【底部回复邮箱我发送哦】,大家也可以自己去下载,点击跳转到下载地址
大家可以自己去下载
12套企业门店展示类小程序源码
http://xiaochengxudev.com/forum.php?mod=viewthread&tid=2
小商店微信小程序【包括客户端和服务器端代码以及数据库】
https://www.douban.com/group/topic/113284790/
o2o微信小程序源码-专门针对o2o类别的小程序源码集合【更新整理中...】
https://www.douban.com/group/topic/112976623/
查看更多小程序资源去下面论坛找更多
-
微信公众平台深度开发v2.0第1季——微信公众号基础功能、接收普通消息、被动回复用户消息
2015-09-09 19:49:02“微信公众平台深度开发Java版 v2.0”系列课程共有6季,使用JAVA语言,系统讲解微信公众平台订阅号、服务号官方列出的全部功能接口,包括:自定义菜单、个性化菜单(按需定制菜单)、群发消息、客服消息(有限次消息... -
微信小程序-毕业设计完整项目介绍(微信小程序+Java后台SSM框架)
2019-06-07 22:51:28基于微信小程序的培训机构系统 前言:该系统作为本科毕业设计,可能还有很多的不足。只是当时做这个系统的时候,由于需要使用java语言作为后端实现与微信小程序界面数据交互,看遍网上很多的案例基本后台都是php语言... -
微信公众号之接入微信公众号服务器开发(一)
2018-12-28 14:06:14说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家...在这里可以通过微信渠道将品牌推广给上亿的微信用户,减少宣传成本,提高品牌知名度,打造更具影响力的品牌形象。 3. 公众平台 微信公众平... -
微信支付开发-微信公众号开发12-微信开发php
2016-09-19 17:28:35微信公众平台开发之微信支付开发是子恒老师《微信公众平台开发》视频教程的第12部。详细讲解了用php进行微信支付的开发。内容包含获取支付密钥,微信公众号支付开发,扫码支付,微信刷卡支付,异步处理支付结果等等... -
微信小程序之目前为止史上最全的微信小程序项目实例, 微信小程序实战学习
2017-01-12 13:21:21WXCustomSwitch 微信小程序自定义 Switch 组件模板 WeixinAppBdNovel 微信小程序demo:百度小说搜索 shitoujiandaobu 小程序:石头剪刀布(附代码说明) audiodemo 微信小程序开发之视频播放器 Video 弹... -
爬取微信小程序源码
2020-06-12 17:41:04爬取微信小程序源码 想知道爬取微信小程序有多简单吗?一张图、三个步骤,拿到你想要的任何微信小程序源码。 我就这么短,但是很爽是不是,都看到这里了,点赞关注走一走吧,谢谢大家! ... -
微信小程序开发实战
2016-09-25 16:55:04本套课程使用了元认知教学法,直接实战式教学,摆脱学院派的理论式讲解,对于0基础的学员可以入门编写微信小程序,过程中指导如何学习使用文档查阅接口等,通过两个完整的实战小项目的实例,入手小程序开发。 -
微信公众号编辑器开发-微信公众号开发11-微信开发php
2017-03-20 11:07:51微信公众平台开发之微信编辑器开发是子恒老师《微信公众平台开发》视频教程的第11部。详细讲解了用php进行微信编辑器的开发。内容包含微信公众号编辑器开发思路,编辑器前端页面,功能实现,添加新样式等等。欢迎... -
微信网页授权开发-微信公众号开发10-微信开发php
2016-10-09 09:17:53微信公众平台开发之微信网页授权开发是子恒老师《微信公众平台开发》视频教程的第10部。详细讲解了用php进行微信网页授的开发。内容包含构造授权uri,实现网页授权,优化微信网页授,获取用户信息等等。 -
微信小程序毕业设计、微信小程序商城毕业设计
2019-07-04 11:36:36【微信小程序毕业设计、商城小程序】 该微信小程序商城功能模块包含: 首页、分类、商品详情页面,包含加入购物车、收藏商品、商品评论功能、用户登录、微信登录、订单管理、地址管理;完整的购物流程,商品的加入、... -
微信小程序部署到线上环境
2018-09-05 12:32:15微信小程序部署到线上环境 一.微信小程序申请 申请,并认证(未认证不能发布,认证需要300元,目前只支持企业认证)详细见官网说明。 https://mp.weixin.qq.com/cgi-bin/registermidpage?action=index&... -
微信公众平台深度开发v2.0第2季——获取微信服务器IP地址、微信公众号事件、自定义菜单、客服消息
2015-11-09 14:34:32“微信公众平台深度开发Java版 v2.0”系列课程共有6季,使用JAVA语言,系统讲解微信公众平台订阅号、服务号官方列出的全部功能接口,包括:自定义菜单、个性化菜单(按需定制菜单)、群发消息、客服消息(有限次消息... -
小程序与微信会员卡打通教程
2020-07-15 10:36:05目录 一 前言 ...1 开通微信小程序、开通微信公众号、开通微信开放平台 2 小程序与微信卡包交互流程图 公众号客户端与自建服务器关系? 小程序客户端与公众号卡包关系? 3 小程序与微信公众号关系 -
微信小程序:微信公众号申请微信小程序并认证的步骤
2019-02-16 18:32:18如果公司需要开发小程序,首先要在公司微信公众号里面申请小程序,快速开通并认证之后才能使用。微信最新推出,只要认证过微信公众号,那么接着认证微信小程序就可以复用微信公众号资质注册小程序流,快速注册认证小... -
微信小程序实现微信登录(Java后台)
2018-12-13 19:51:38这两天在自己的小项目中加入了微信小程序的很多功能,今天来说一下关于微信授权登录的部分。 需要的材料 1:一个可以测试的微信小程序 2:此微信小程序的APPID和APPscret 流程 微信用户对应一个小程序都有一个... -
微信公众平台架构设计及微信开发样式库
2016-04-11 08:28:52微信公众平台开发有关与架构设计、安全、微信UI的相关知识。提供全套的开发工具,从“初级”开始讲解,教授如何注册、使用开发账号。特别的,还有专门的课程,手把手教同学们如何搭建环境。 -
Android:微信登录,微信分享demo 源码
2015-09-11 17:46:25使用微信进行第三方登录,微信登录,微信分享,朋友圈分享的demo,了解详情,请进入:http://blog.csdn.net/xiong_it/article/details/48317527 -
微信开发13-微信门店开发(PHP)
2017-03-28 15:58:02微信公众平台开发之微信门店开发是子恒老师《微信公众平台开发》视频教程的第13部。详细讲解了用php进行微信门店的开发。内容包含新增微信门店,列表门店列表,获取和修改门店信息等等。欢迎反馈,微信号:QQ... -
微信小程序调用支付接口支付
2018-06-25 17:32:14我前段时间做微信支付,遇到了很多坑,网上也没有讲解的特别明白的,通过借鉴各路人才的经验,最后也完成了,网上有很多讲解,我在这只讲一些注意点和解决的方法。我就讲讲我从完全懵到完成的过程吧。 在微信提供的... -
微信小程序+java后台
2018-03-21 21:30:58博主是大四学生,毕业设计做的是微信小程序+java后台。陆陆续续经历了三个月(因为白天要实习又碰上过年玩了一阵子),从对微信小程序一无所知到完成毕设,碰到许多问题,在跟大家分享一下自己的经历和一个小程序... -
微信支付微信公众平台网页支付java版
2017-03-26 21:08:07如果你不会微信支付开发,你微信公众号开发白学了!现在微商城越来越火,微信支付开发是的技术技能,也是众多网络技术公司招聘技术的条件。本课程将一步一步带你实现微信支付开发网页版。让你的公众号变现不再是梦 -
微信沙箱开发,微信社交立减金接口升级
2018-02-01 16:21:25微信沙箱也叫微信仿真测试系统,微信沙箱开发是子恒老师《子恒说微信开发》视频教程的第18部。详细讲解了微信沙箱开发过程,内容包含微信沙箱作用,获取微信沙箱验签秘钥KEY,在沙箱中实现社交立减金接口升级等等。... -
支持最新版微信 C# 微信HOOK,微信版本 3.0.0.57
2020-02-26 17:02:00C#微信HOOK 基于微信2.8 版本全接口微信机器人 c# NET4.5 vs2017编译 已经投入项目中使用。 功能列表 1.支持获取登录二维码; 2.支持好友/群员列表/公众号列表,人员信息,头像等; 3.支持收发消息,区分接收和...
-
仿真钢琴-javascript实战
-
微信支付2021系列之扫码支付一学就会java版
-
yii2.0框架的错误和异常处理机制
-
变换域窄带干扰抑制技术中变换基的选取研究
-
Qt项目实战之基于Redis的网络聊天室
-
MIPS系统异常现场分析工具的设计与实现
-
转行做IT-第5章 流程控制语句
-
基于VHDL实现的自动售货机芯片设计
-
数据挖掘技术在教务管理实践中的应用研究
-
MyDemo3.unitypackage
-
整车电气故障诊断的流程设计及应用
-
SIEMENS-西门子屏幕程序下载时提示缺少面板映像的解决办法.txt
-
2021-1小时Django和Mysql数据库操作入门教程(新手入门)
-
Python专题精讲 文件目录与系统参数操作
-
i9 10900k和r9 3900x 哪个好 i910900k和r93900x游戏性能评测
-
RHCE-Day01
-
基于1553B总线的接口实现与测试
-
Python专题精讲 随机与抽样
-
Duplicate entry问题
-
基于ARM的全数字双闭环无刷直流电动机控制系统设计