python 微信批量发送消息脚本

通过python 利用微信公众号,批量发送消息
但是,因为免费的,一天一个用户,只能发90条消息。。。
可以用于zabbix啊,。等监控

 
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import urllib2
import sys

import simplejson as json
reload(sys)
sys.setdefaultencoding( "utf-8" )


class weChat:
    def __init__(self, url, Corpid, Secret):
        url = '%s/cgi-bin/gettoken?corpid=%s&corpsecret=%s' % (url, Corpid, Secret)
        res = self.url_req(url)
        self.token = res['access_token']
        print self.token

    def url_req(self, url, method='get', data={}):
        if method == 'get':
            req = urllib2.Request(url)
            res = json.loads(urllib2.urlopen(req).read())
        elif method == 'post':
            req = urllib2.Request(url, data)
            res = json.loads(urllib2.urlopen(req).read())
        else:
            print 'error request method...exit'
            sys.exit()
        return res

    def send_message(self, userlist, content, agentid=0):
        self.userlist = userlist
        self.content = content
        url = 'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=%s' % self.token
        data = {
            "touser": "",
            "toparty": "",
            "totag": "2",
            "msgtype": "text",
            "agentid": "1",
            "text": {
                "content": ""
            },
            "safe": "0"
        }
        data['touser'] = ('|').join(userlist)
        data['agentid'] = agentid
        data['text']['content'] = content
        print data
        data = json.dumps(data, ensure_ascii=False)
        res = self.url_req(url, method='post', data=data)
        if res['errmsg'] == 'ok':
            print 'send sucessed!!!'
        else:
            print 'send failed!!'
            print res


if __name__ == '__main__':
    userlist = ['zhangmingyang888','augafox','wopost']  #用户列表
    content = [u'世界你好']     #消息
    content = '\n'.join(content)
    Corpid = 'wxaf10ef009f47e'   
    Secret = 'KhKHccubGob66d40EWmi_GSwSL1aA-CdY8_66kNeSXl9tD3u8kZ91tBG6h6lsghQ' 
    url = 'https://qyapi.weixin.qq.com'

    wechat = weChat(url, Corpid, Secret)
    wechat.send_message(userlist, content)
未经允许不得转载:99ya » python 微信批量发送消息脚本

抢沙发