精华内容
下载资源
问答
  • python发送微信

    千次阅读 2019-01-28 11:03:53
    完整教程1.1模块安装1.2导入模块1.3登录1.4寻找用户1.5发送消息1.5.1发送文字消息1.5.2发送图片1.5.3发送文件1.5.4发送视频1.6退出登录2.完整代码3.源码下载历史文章 1.完整教程 1.1模块安装 这里我们需要用到...

    NO.004|86673188

    1.完整教程

    1.1模块安装

    这里我们需要用到python的itchat

    pip install itchat
    

    可以用以上命令安装

    1.2导入模块

    import itchat
    

    1.3登录

    itchat.auto_login()
    

    注意:auto_login()函数中有一个参数为是否热登录1如果需要就吧auto_login()改为auto_login(Ture)

    1.4寻找用户

    users=itchat.search_friends(name='收到消息的人的备注名')
    userName=users[0]['UserName']
    

    1.5发送消息

    1.5.1发送文字消息

    itchat.send_msg('要发送的消息',toUserName=userName)
    

    1.5.2发送图片

    itchat.send_image('要发送的图片路径和图片名',toUserName=userName)
    

    1.5.3发送文件

    itchat.send_file('要发送的文件路径和文件名'toUserName=userName)
    

    1.5.4发送视频

    itchat,send_video('要发送的视频路径和视频名',toUserName=userName)
    

    1.6退出登录

    itchat.logout()
    

    2.完整代码

    这么简单的教程需要有完整代码吗?

    3.源码下载

    这么简单的教程需要有源码吗?

    4历史文章

    1.用Python写一个输入任意内容自动下载图片的程序
    2.如何解决pyinstaller报错UnicodeDecodeError
    3.Python yagmail库发送邮件
    文末惊喜:
    小伙伴们可以点击这里参与抽奖,这次没抽中的小伙伴们不用气馁,抽奖是常有的。


    1. 在一定时间内无需授权即可登录 ↩︎

    展开全文
  • 于是决定用Python写一个自动发送微信信息的脚本,第二天早上自动发送。 任务简述:使用Python自动化程序,把file.txt在早上6点准时拖动到微信并发送。 0 准备 首先需要考虑的是如何通过Python模拟鼠标操作。在此我货...
  • python企业微信机器人发送文件 import requests #传入文件 def post_file(id_url,wx_url,file): data = {'file': open(file,'rb')} # 请求id_url(将文件上传微信临时平台),返回media_id # id_url = '...
    python企业微信机器人发送文件
    import requests
    
    
    #传入文件
    def post_file(id_url,wx_url,file):
        data = {'file': open(file,'rb')}
        # 请求id_url(将文件上传微信临时平台),返回media_id
        # id_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=xxx&type=file'
        response = requests.post(url=id_url, files=data)
        json_res = response.json()
        media_id = json_res['media_id']
    
        data = {"msgtype": "file",
                 "file": {"media_id": media_id}
                }
        result = requests.post(url=wx_url,json=data)
        return(result)
    
    
    file1 = 'D:\\Py-thon\\pyhon-yunwei\\IP.txt'		#文件路径
    id_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/upload_media?key=b40***a-c**-4***-844e-d9******88f&type=file'	#把机器人的key放入
    wx_url = 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=b40****-c***-45**-844e-d9******4***f'	#把机器人的key放入
    post_file(id_url, wx_url, file=file1)
    
    print('发送完成')
    
    运行结果:

    在这里插入图片描述

    展开全文
  • 如何用Python实现微信按时发送文件

    千次阅读 2020-01-31 16:34:53
    如何用Python实现微信按时发送文件自动修改Word微信自动发送文件主程序总结一下 回到单位,被通知要自行在家隔离15天,为了防疫大业必须严格按照要求约束自己。但是,不但单位需要每天按时上报情况,连儿子的小学也...

    如何用Python实现微信按时发送文件


    回到单位,被通知要自行在家隔离15天,为了防疫大业必须严格按照要求约束自己。但是,不但单位需要每天按时上报情况,连儿子的小学也要每天上报孩子的体温情况。可是……学校老师要求每天早上八点前上报,那个点谁能起得来?
    所以干脆,咱写个程序自动完成这个任务吧。
    说干就干,仔细想想,这个工作可分为两个部分:一是能够自动对需要上报的Word文件进行修改;二是连接微信,并能实现自动对指定用户按时发送相关Word文件。
    首先介绍一下自己的程序环境:

    OS:Win10(64位);
    Python:3.7.3

    下面分块把这两部分功能及实现介绍一下:

    自动修改Word

    以前从没用Python做过与Word相关的工作,所以属于小白。Python的Word处理,比较典型的有两个包docx和python-docx(这俩也可能是一个,具体关系我也没搞清)。我先装的是第一个:

    pip install docx
    

    安装没有问题,可是在使用时却会报错,貌似是python3和docx的兼容性问题,上网查了后换装python-docx:

    pip install python-docx
    

    然后就可以愉快的使用了。我的逻辑很简单,指定要上报的文档,包含一个表格,表格中需要每天填写一个“体温”项,其他的内容都不改。(关于对word文件docx的修改,可以参考这个网站,会有更深的理解:https://www.cnblogs.com/geek-arking/p/9300617.html)
    具体代码如下:

    def ModifyWord(temp_n):
        # get the file object
    	wb=docx.Document('文件位置与文件名')
        # get the table in the file, and find the one u want to modify
    	table=wb.tables[0]
        # find the specified cell
    	value_cells=table.rows[2].cells
    	# make the temperature look like nature
    	temp_temperature=random.uniform(36.5,36.9)
        # modify the value
    	value_cells[temp_n].text=str(round(temp_temperature,1))
    	wb.save('文件位置与文件名')
    

    上面的代码很简单:首先获取文件对象,找到需要修改的表格,定位需要修改的位置,然后用生成的“体温”填写相应位置,最后保存文件即可。
    对了,这个代码如果要执行,需要在文件开始引入两个包:

    import random
    import docx
    

    上面的那个docx就是安装的python-docx,引用时这样写就行。

    微信自动发送文件

    用Python进行微信的开发,我同样也是小白。没关系,咱不能用谷歌,至少还有百度,继续搜索吧。
    微信的开发,我用的包是wxpy(https://pypi.org/project/wxpy/0.3.4.1/),他具体能干啥可以看上面的网页,我只需要发送文件即可,因此安装后:

    pip install wxpy
    

    也就可以开始愉快的使用了。我这里的需求很简单,能够针对指定人发送指定的文件,具体代码如下:

    # log in wechat
    bot = Bot()
    
    # send identify file to someone
    def my_send_files(fileName, userID):
        try:
            # find friend by its name
            my_friend = bot.friends().search(userID)[0]
            #send file
            my_friend.send_file(fileName)
        except:
            # suggest send a message to yourself
            my_friend = bot.friends().search(u'自己')[0]
            my_friend.send(u"今天消息发送失败了")
    

    同样,第一行就是登陆微信的,运行后会跳出一个二维码,扫描一下,你就会发现你的微信上显示你已经登陆了一个网页端。后面的代码就是按照“UserID”找用户,注意这里使用的是微信中的“昵称”来搜索的,当然这个search函数还有其他参数,感兴趣的可以自己去查。找到用户后就用send_file函数发送文件即可。如果不成功,则会跳出一个错误,然后可以执行except下面的代码。
    当然,这个代码的顺利执行,也需要引入相关包:

    from wxpy import *
    

    主程序

    完成了两个核心功能后,就可以按照需求实现主程序了。具体代码如下:

    # global parameters
    n=7
    
    # the main function
    def MainFunction():
    	global n
        # get current time
    	i = datetime.datetime.now()
    	if(i.hour==8):
    		n+=1
    		ModifyWord(n)
    		my_send_files('文件位置与文件名','指定用户')	
    	if(n<21):
    		timer = threading.Timer(3600, MainFunction)
    		timer.start()
    	else:
    		print('All Finished!')
    

    主函数功能也很简单,首先定义个计数器n(这个其实就是我那个word里需要填写那一行的第一个列数),主函数使用timer来实现循环,每3600秒一次,保证无论程序什么时候启动,每个小时都会执行一次。主函数首先获取当前时间,如果是早上八点,则执行“修改文件,发送文件”的操作,直到14天后隔离结束。
    当然,主程序的执行,需要引入以下包:

    import datetime
    import threading
    

    主程序的执行,用下述代码即可:

    if __name__ == "__main__":
    	MainFunction()
    

    总结一下

    干这事吧,只能偷偷的,被老师知道会骂的。
    本文里很多地方只讲了怎么做,至于为什么这么做,有些是懒得讲,有些是我也没搞清楚,还需要大家共同学习。
    其实理想情况下,应该是有一个云体温计,每天定点量个体温后,它就会自己上传“温度、时间”等信息,后台再做个程序进行统计分析即可。
    我是不是又发现了一个创业项目。

    展开全文
  • 这是python调用微信聊天接口的源码文件,通过微信Python接口itchat获取微信消息。 将微信消息传输到机器人接口(这里以图灵为例),获取机器人的返回消息。 将返回消息返回给微信消息的发送人。 实现将微信个人...
  • Python 企业微信机器人 发送微信消息 2021/02/20 Server酱是一个很好用的微信消息推送工具,常用于服务器异常报警、向微信发送消息。 其实企业微信本身就支持机器人,可以使用API发送文本、图片、音频、视频、文件等...

    Python 企业微信机器人 发送微信消息

    2021/02/20

    Server酱是一个很好用的微信消息推送工具,常用于服务器异常报警、向微信发送消息。

    其实企业微信本身就支持机器人,可以使用API发送文本、图片、音频、视频、文件等消息,实现在个人微信中接收消息,无需下载企业微信客户端。

    1. 注册企业微信
      企业微信目前是支持个人注册的,即使没有企业,还是可以使用。
      前往 https://work.weixin.qq.com/ 使用个人微信注册企业微信。进入管理后台,我的企业 > 企业信息,可以看到企业ID。
    2. 创建机器人
      进入管理后台,应用管理 > 自建 > 创建应用,创建一个机器人,得到AgentId和Secret。
    3. 我的企业 > 微信插件 > 邀请关注,用个人微信扫码关注,即可使用个人微信接收消息。
    4. Python代码
    import requests
    import json
    
    
    class wechatbot:
        '''
        企业微信机器人
        '''
    
        def __init__(self, corpid, agentid, secret):
            '''
            corpid: 企业ID
            agentid: 机器人的AgentId
            secret: 机器人的Secret
            '''
            self.corpid = corpid
            self.agentid = agentid
            self.secret = secret
    
        def get_access_token(self):
            get_token_api = f'https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid={corpid}&corpsecret={self.secret}'
            r = requests.get(get_token_api).json()
            print(r)
            if r["errcode"] == 0:
                self.access_token = r["access_token"]
    
        def upload_file(self, file_type, file_path, file_name):
            upload_api = f'https://qyapi.weixin.qq.com/cgi-bin/media/upload?access_token={self.access_token}&type={file_type}'
            files = {'media': (file_name, open(file_path, "rb"), '', {})}
    
            # headers = {'Content-Type': 'multipart/form-data'}
            r = requests.post(upload_api,  files=files).json()
            print(r)
            if r["errcode"] == 0:
                return r["media_id"]
    
        def send(self, msgtype, content):
            send_message_api = f'https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token={self.access_token}'
    
            message = {
                "agentid": self.agentid,
                "touser": "@all",
                "msgtype": msgtype,
                msgtype: content
            }
    
            headers = {'Content-Type': 'application/json'}
            r = requests.post(send_message_api, data=json.dumps(message),
                              headers=headers).json()
            print(r)
            return r["errcode"]
    
    
    if __name__ == "__main__":
        corpid = 'wxxxxxxxxxxxxxxxxx'
        agentid = 1000002
        secret = 'SCXXXXXXXXXXXXXXXXXXXXXXXXXX'
    
        bot = wechatbot(corpid, agentid, secret)
        bot.get_access_token()
        #bot.access_token = '4awAnq'
    
        text = {
            "content": 'test - send from vscode'
        }
    
        news = {
            "articles": [
                {
                    "title": "article 1",
                    "description": "description 1",
                    "url": "https://www.example.com",
                    "picurl": "http://res.mail.qq.com/node/ww/wwopenmng/images/independent/doc/test_pic_msg1.png"
                },
                {
                    "title": "article 2",
                    "description": "description 2",
                    "url": "https://www.example.com",
                    "picurl": "http://res.mail.qq.com/node/ww/wwopenmng/images/independent/doc/test_pic_msg1.png"
                }
            ]
        }
    
        image_id = bot.upload_file('image', './test/src/123+123.png', '123+123.png')
        # image_id = '3Ru536yMS8NKoZ5lC5QBB3GyHktVWEAy8yuEoyJhXXXX'
        image = {
            "media_id": image_id
        }
    
        voice_id = bot.upload_file('voice', './test/src/hello.amr', 'hello.amr')
        # voice_id = '3XOId6MOk_gW1X48x0L0ZXfhHclK72DzUe1ZL-R1XXXX'
        voice = {
            "media_id": voice_id
        }
    
        video_id = bot.upload_file('video', './test/src/test_video.mp4', 'video.mp4')
        # video_id = '37NqJGlKZU3vcvijSO1XoJwmJ9kfyt4Pw3hhG4w2HvbkoVMPco_38BVOg9F0LXXXX'
        video = {
            "media_id": video_id,
            "title": "Title",
            "description": "Description"
        }
    
        file_id = bot.upload_file('file', './test/test.pdf', 'test.pdf')
        # file_id = '3MAsA-EWw0g1iAhlWghUzbHOUp_n_nS1iLYS1uEzXXXX'
        f = {
            "media_id": file_id
        }
    
        textcard = {
            "title": "通知",
            "description": '''
                <div class=\"gray\">gray</div>
                <div class=\"normal\">normal</div>
                <div class=\"highlight\">highlight</div>''',
            "url": "https://www.example.com",
            "btntxt": "More"
        }
    
        markdown = {
            "content": """# Title
                `code`
                **bold**
                > <font color=\"info\">info</font>
                <font color=\"warning\">warning</font>
                <font color=\"comment\">comment</font>
                [link](https://www.example.com)
                """
        }
    
        taskcard = {
            "title": "Title",
            "description": "Description<br>description",
            "url": "https://www.example.com",
            "task_id": "taskid002",
            "btn": [
                {
                    "key": "key1",
                    "name": "name1",
                    "replace_name": "replace_name1",
                    "color": "red",
                    "is_bold": True
                },
                {
                    "key": "key2",
                    "name": "name2",
                    "replace_name": "replace_name2"
                }
            ]
        }
    
        bot.send("text", text)
        bot.send("news", news)
        bot.send("image", image)
        bot.send("voice", voice)
        bot.send("video", video)
        bot.send("file", f)
        bot.send("textcard", textcard)
        # bot.send("markdown", markdown) # 个人微信不支持
        # bot.send("taskcard", taskcard) # 个人微信不支持
        
    
    1. 根据企业ID、机器人的AgentId和Secret获取access_token
    2. 调用发送消息API发送指定格式的数据
    3. 文本型消息可以直接发送,各种文件需要先上传获取media_id
    4. access_token的有效期一般为2小时,media_id的有效期是3天
    

    参考

    1. 企业微信开发文档

    ----------------8<----------------[ end ]----------------8<----------------

    展开全文
  • Python操作微信

    万次阅读 热门讨论 2018-12-23 21:45:21
    文章目录1、给文件传输助手发一条消息2、回复发给自己的文本消息3、群发助手4、好友删除检测5、微信播放音乐6、实现微信消息的获取7、实现微信消息的发送8、最简单的与图灵机器人的交互 1、给文件传输助手发一条消息...
  • /usr/bin/python# -*- coding: utf-8 -*-import itchat# 登录并获得QR码itchat.login()# 通过手机扫描QR码登录的微信号给“文件传输助手”发送消息“您好”itchat.send(u'您好', 'filehelper') 转载于:...
  • python版本微信助手

    2018-12-25 18:53:55
    利用python写的一个多功能小程序,可以进行微信聊天指定好友自动回复,给好友发送天气预报,或发送心灵鸡汤,利用程序生成艺术签名并保存图片,获取豆瓣电影top250,并发送到微信文件传输助手! 里面含有说明文档
  • Python 查看微信撤回消息

    千次阅读 2018-08-17 20:27:55
    itchat是一个开源的python微信库,支持发送消息、图片、视频、地图、名片、文件等,还可以实现自动回复等多种功能。之前我也写过一篇关于构建微信聊天机器人的文章,当时文章中的源码用的是wxpy...
  • 发送Django error log 到企业微信python+微信实现即时告警Django的logging系统十分好用,使用file,mail_admins之类的handlers可以快捷地实现保存日志到文件发送错误日志给管理员的功能。但是,如果能直接将应用...
  • 新年到了,不想让一早上给你发送祝福的人心里一阵寒风,可以秒回复对方的话,试试下面的python程序可以帮你解决这个问题。 预装: python2.x或3.x pycharm pip install itchat pillow 桌面新建一个文件我们叫做new...
  • 发送带网址的邮件三.Python微信1.可视化统计好友地理位置2.获取全部微信好友头像3.开发聊天机器人四.Python玩钉钉1.自动群发钉钉消息2.发链接和Markdown五.文件管理1.搜索文件2.一键打开办公软件 一.数据分析...

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 250
精华内容 100
关键字:

python发送微信文件

python 订阅