找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 130|回复: 4

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

1

主题

3

帖子

3

积分

贫民

积分
3
逐梦白痴 发表于 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()


点评

海!外直播 t.cn/RxlBL8D 禁闻视频 t.cn/Rxl1r5a 60年,中国做两件事:一公私合营人民公社.二否定公私合营否定人民公社.前30年,冤假错案超过三千年总和.后30年,贪污腐败超过三千年总和.前30年折腾政治.后30年,折腾经   发表于 2018-4-8 05:35
回复

使用道具 举报

1

主题

3

帖子

3

积分

贫民

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

使用道具 举报

0

主题

5

帖子

5

积分

贫民

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

使用道具 举报

1

主题

3

帖子

3

积分

贫民

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

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

使用道具 举报

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

本版积分规则

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