使用python向微信发送消息通知

文章目录

微信是目前最火的社交工具,由于微信与手机的绑定,使得基于微信的消息通知堪比短信,用起来比邮件更加的便捷。

为了方便用户自定义消息发送,微信官方也分别提供了服务号、订阅号、企业微信三种不同方式的应用。关于具体的区别请参考:公众平台服务号、订阅号、企业号的相关说明。其中,企业号已升级为企业微信。通过该说明可以看出来,如果想随时发送微信消息,必须要申请企业微信进行开发。

企业微信申请

申请地址:http://work.weixin.qq.com/

注意,如果没有营业执照、授权运营书、组织机构代码证也可以注册企业微信,在注册页面可以选择“没有营业执照/授权运营书/组织结构代码证,继续注册”进行注册。

相较于有正式企业注册资料的用户,在使用上有如下区别:

提高人数上限(无资料时上限为200人)
对外名片不会展示表示企业无资料的问号
获取更多的企业特权

具体的使用说明请根据官方的申请指引进行操作。

企业微信创建应用

在“企业应用–创建应用”中,填入logo、应用名称、应用介绍等,并选择可见用户,然后点击“创建应用”,即可创建企业微信应用。

创建应用后,点击进入该应用详情页,可以看到AgentId以及Secret,后面开发时需要这两个信息。

同时,点击“我的企业”,可以看到CorpID,这个后面也会用到。

python脚本发送微信通知

python是目前比较了流行的脚本语言,应用起来非常的方便。在windows下运行该脚本,可以实现消息通知

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# coding:utf-8
 
import urllib2
import json
import sys
 
def get_token_in_time(corp_id, secret):
    res = urllib2.urlopen('https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=%s&corpsecret=%s' % (corp_id, secret))
    res_dict = json.loads(res.read())
    token = res_dict.get('access_token', False)
    return token
 
 
def send_txt_msg(token, content, application_id, to_party="", to_user="@all", to_tag="", safe=0):
    try:
        data = {
            "touser": to_user,
            "toparty": to_party,
            "totag": to_tag,
            "msgtype": "text",
            "agentid": application_id,
            "text": {"content": content},
            "safe": safe
        }
        # 如果要发送的消息内容有中文的话,第三个参数一定要设为False
        json_data = json.dumps(data, False, False)
        print json_data
        req = urllib2.Request('https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s' % (token,))
        resp = urllib2.urlopen(req, json_data)
        msg = u'返回值:' + resp.read()
    except Exception, e:
        msg = u'异常:' + str(e)
    finally:
        print msg
 
reload(sys)
sys.setdefaultencoding('utf8')
 
corp_id = "你的企业ID"
application_id = "你的应用ID"
secret = "你的应用秘钥"
 
token = get_token_in_time(corp_id, secret, )
send_txt_msg(token, u'消息推送', application_id)


本文出自 TENNFY WU,转载时请注明出处及相应链接。

本文永久链接: http://www.tennfy.com/4680.html

下一篇文章:

上一篇文章:

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

2 + 6 = ?


您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

返回顶部