利用python3发微信

发布时间:2019-09-27 07:09:28编辑:auto阅读(1812)

    1:首先去微信企业号官网去申请一个帐号

    2:在‘企业应用’里创建自建应用,并记住agentid。下面会用到

    3:corpid,corpsecret在哪里,你自己百度找吧。多的是答案。


    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    #GuoYabin
    
    import requests,json,sys,imp
    imp.reload(sys)
    
    class WeChat(object):
    
    	def __init__(self):
    		self.url='https://qyapi.weixin.qq.com/cgi-bin/gettoken'
    		self.corpid = '你申请的微信企业号corpid'
    		self.corpsecret = '你申请的微信企业号corpsecret'
    		
    	def auth(self):
    		params={'corpid':self.corpid,'corpsecret':self.corpsecret}
    		try:
    			rs=requests.get(self.url,params=params)
    			return(rs.json()['access_token'])
    			rs.close()
    		except:
    			print('get access_token error!')
    
    	def getToken(self):
    		try:
    			file=open('token.txt','r')
    			token=file.read()
    			file.close()
    		except:
    			token=self.auth()
    			file=open('token.txt','w')
    			file.write(token)
    			file.close()
    		return(token)
    
    
    	def message(self,touser,message):
    		data=json.dumps({
    			'touser':touser,
    			'toparty':'2',
    			'msgtype':'text',
    			'agentid':'1',
    			'text':{
    				'content':message},
    			'safe':'0'
    		},ensure_ascii=True)
    		return(data)
    		
    	def send(self,touser,message):
    		try:
    			url='https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token='+self.getToken()
    			res=requests.post(url,data=self.message(touser,message))
    			print(res.json())
    			res.close()
    		except:
    			print('send error!')
    			
    if __name__ == '__main__':
    	weixin=WeChat()
    	weixin.send(sys.argv[1],sys.argv[3])


关键字