找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 5639|回复: 8

[代码与实例] 电脑读微信内容

3

主题

6

帖子

6

积分

贫民

积分
6
逐梦白痴 发表于 2018-4-6 10:22:57 | 显示全部楼层 |阅读模式
小白新手一枚,刚学的python不久,利用微信接口itchat写了个电脑读微信的小程序,共享。
#_*_coding:utf-8_*_
import itchat
import pyttsx3
import win32com.client
from itchat.content import *
import os
from PIL import Image
import io
import sys
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='gb18030')
if not os.path.exists('chat_temp'):
        os.mkdir('chat_temp')

engine = pyttsx3.init()#语音模块的初始化
#个人消息提示
@itchat.msg_register([TEXT,PICTURE,RECORDING])#这个@的用法,我也还不会,看的教程的。
def get_New_msg(msg):
        #print(msg['Type'])
        if msg['Type'] == TEXT:       
                print(itchat.search_friends(userName = msg['FromUserName'])['NickName'],':', msg['Text'])

                #time.sleep(3)
                engine.say(itchat.search_friends(userName = msg['FromUserName'])['NickName'] + '说')
                engine.say(msg['Text'])
                engine.runAndWait()
        elif msg['Type'] == PICTURE:
                print('收到一张图片')
                engine1.say(itchat.search_friends(userName = msg['FromUserName'])['NickName'] + '发来了一张图片')
                engine1.runAndWait()
                temp_file = str(msg.download(r'chat_temp/' + msg['FileName']))       
                #print(temp_picture)
                File_list = sorted(os.listdir(r'chat_temp'))
                picture_list = []
                for file in File_list:
                        if file.endswith('png'):
                                picture_list.append(file)
                Current_Pictur = picture_list[-1]
                img=Image.open('chat_temp/' + tr(Current_Picture))
                img.show()               
        elif msg['Type'] == RECORDING:
                engine.say(itchat.search_friends(userName = msg['FromUserName'])['NickName'] + '发来一段语音')
                engine.runAndWait()
                temp_fil = str(msg.download(r'chat_temp/' + msg['FileName']))       
                File_list = os.listdir(r'chat_temp')
                mp3_list = []
                for file in File_list:
                        if file.endswith('mp3'):
                                mp3_list.append(file)
                mp3_list = sorted(mp3_list)
                Current_mp3 = mp3_list[-1]
                os.system(r'chat_temp\\'+str(Current_mp3))

#群聊消息提示
engine1=pyttsx3.init()
@itchat.msg_register([TEXT,PICTURE,RECORDING],isGroupChat=True)
def group_chat(msg):
        if msg['IsAt']==True:
                engine1.say('Hey,'+msg['User']['Self']['NickName']+msg['User']['NickName']+'群的'+msg['ActualNickName']+'at你了!')
                engine1.runAndWait()
                print(msg)

        if msg['Type']=='Text':
                print(msg['User']['NickName']+msg['ActualNickName']+':'+msg['Text'])
                engine1.say(msg['User']['NickName']+'群的'+msg['ActualNickName']+'发来消息:'+msg['Text'])
                engine1.runAndWait()
        elif msg['Type']=='Picture':
                print(msg['Type'])
        elif msg['Type']=='Recording':
                print(msg['Type'])
        print(msg)
itchat.auto_login()
itchat.run()


回复

使用道具 举报

3

主题

6

帖子

6

积分

贫民

积分
6
逐梦白痴  楼主| 发表于 2018-4-6 10:24:09 | 显示全部楼层
主要功能就是把别人发给自己的微信文字还有语音播报出来,达到不看手机也能看到微信提醒的效果
回复 支持 反对

使用道具 举报

0

主题

7

帖子

7

积分

贫民

积分
7
wussrc 发表于 2018-4-9 14:46:10 | 显示全部楼层
不错,对于上班族很使用,谢谢分享,看一下代码
回复 支持 反对

使用道具 举报

3

主题

6

帖子

6

积分

贫民

积分
6
逐梦白痴  楼主| 发表于 2018-4-16 20:58:32 | 显示全部楼层
wussrc 发表于 2018-4-9 14:46
不错,对于上班族很使用,谢谢分享,看一下代码

哈哈哈,谢谢
回复 支持 反对

使用道具 举报

0

主题

5

帖子

5

积分

贫民

积分
5
轲凌 发表于 2018-4-27 13:15:28 | 显示全部楼层
这个功能很实用啊
回复 支持 反对

使用道具 举报

0

主题

9

帖子

9

积分

贫民

积分
9
x88484532 发表于 2018-5-14 16:42:03 | 显示全部楼层
不错,学习了
回复 支持 反对

使用道具 举报

0

主题

2

帖子

2

积分

贫民

积分
2
yinxianfeng 发表于 2018-6-12 18:28:41 | 显示全部楼层
学习了!!!!!
回复

使用道具 举报

0

主题

1

帖子

1

积分

贫民

积分
1
季宗元 发表于 2020-3-14 15:55:42 | 显示全部楼层
为什么我安装了模块还是现实缺少模块
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表