开发一款通过微信聊天来学英语的程序

一、前言

先展示视频演示效果:
在这里插入图片描述

在日常生活当中我们离不开微信的使用,据统计,

就每日情况而言,微信日使用时长在“4小时以上”的受访者人数最多,占比为25%;
就每周使用微信天数来看,周使用天数在“7天”的受访者人数最多,占比为88.1%[1]

可见,我们每天使用微信的时间是非常长的,而我们使用微信普遍是用来通信、传达信息,简单称之为“聊天”。既然如此,我们是否可以在使用微信聊天的同时还能学习英语呢?

我们尝试在聊天时,将需要发送的信息,转换成英文再发送。

二、技术路线

由于技术限制,这里只在微信PC端实现。

  1. 获取微信聊天输入框位置
  2. 复制将要发送的文本信息
  3. 翻译文本信息
  4. 发送翻译之后的信息

2.1 获取聊天输入框位置

这里可以参考我之前的一篇博客,里面详细讲解了获取微信聊天输入框位置的方法。
用python识别微信消息界面聊天输入框位置

这一步是非必需的,它的作用是在微信输入框没有获取焦点的时候也同样可以使用,在代码中我省略了这一步。

2.2 复制将要发送的文本信息

这里通过一种最原始直接的方式来实现:程序通过按键Ctrl+ACtrl+C进行全选和复制。

使用pynput库可以实现操控电脑的鼠标和键盘

from pynput.keyboard import Controller as KeyController
key = KeyController()# 键盘按下并释放 Ctrl+A键
key.press(Key.ctrl_l)
key.press('a')
key.release('a')
key.release(Key.ctrl_l)

2.3 翻译文本信息

这里调用腾讯云的机器翻译API进行翻译。(不用花钱,免费额度已经够用了。)

文本翻译的每月免费额度为5百万字符。[2]

如果想了解API的详细使用方法可以查看官方文档。

如果不想看文档的话,我在代码中已经配置好可以使用了,前提是你需要先有一个腾讯云密钥,获取方法如下:

  1. 进入密钥管理界面,(进去之后需要先登录账户)
  2. 新建密钥

新建好密钥之后就能得到SecretIdSecretKey。这两个参数需要加到代码里面。
在这里插入图片描述

2.4 发送翻译之后的信息

对翻译好文本信息进行复制,在微信聊天输入框按键Ctrl+V进行粘贴,然后发送。

以上这些步骤包括按键都是由程序自动完成,你只需要在合适的时机触发程序即可。
至于如何触发?可根据自己喜好来设置按键,比如设置为Alt+Enter发送中午+英文,原本的Enter保持不变。

对于如何获取剪贴板的文本,这里使用pyperclip库实现

import pyperclip as pc
text = pc.paste()  # 获取剪贴板内容
pc.copy('text')  # 复制文本

三、总结

  1. 这是一种可行的利用微信聊天来学习英语的方式,虽然不能成为我们专门唯一的学习英语的方式,但是在日常聊天的同时顺便学习一下英文,这也无伤大雅。
  2. 我们在使用这种方式的时候也要考虑对方的感受,如果面对的是上司、同事或者不熟悉的人,最好不要这样做,选择在跟家人、好朋友或者熟悉的人聊天时才使用这种方式。

在这里插入图片描述

四、代码

4.1 安装第三方库。

安装 pynput 和 pyperclip:

pip install pynput
pip install pyperclip

安装腾讯云SDK,也就是代码中用到的tencentcloud

pip install tencent-cloud-sdk

上面这条语句会安装腾讯云的所有产品,如果你想只安装单个腾讯云产品,请参考官方文档。

4.2 注意事项

  • 程序运行请必须先获取腾讯云密钥中的SecretId和SecretKey,并且写入代码。
  • 原始触发程序的按键是Alt_R+Enter,如果需要更换,可以自行修改,但是有些按键可能会出现bug。

4.3 完整代码

import time
import json
import pyperclip as pc
from pynput.keyboard import Key
from pynput.keyboard import Controller as KeyController
from pynput.keyboard import GlobalHotKeys
from tencentcloud.common import credential
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.tmt.v20180321 import tmt_client, modelsSecretId = ''
SecretKey = ''  # 在腾讯云获取
assert SecretId and SecretKey
cred = credential.Credential(SecretId, SecretKey)
httpProfile = HttpProfile()
httpProfile.endpoint = 'tmt.ap-guangzhou.tencentcloudapi.com'clientProfile = ClientProfile()
clientProfile.httpProfile = httpProfile
client = tmt_client.TmtClient(cred, "ap-guangzhou", clientProfile)
req = models.TextTranslateRequest()key = KeyController()def set_key_ctrl_abc(k):time.sleep(0.15)  # 不能省略key.press(Key.ctrl_l)key.press(k)key.release(k)key.release(Key.ctrl_l)time.sleep(0.15)  # 不能省略def press_and_release(k):key.press(k)key.release(k)def translate(text):params = {'SourceText': text,'Source': 'auto','Target': 'en','ProjectId': 0}req.from_json_string(json.dumps(params))resp = client.TextTranslate(req)return resp.TargetTextdef learn_english():set_key_ctrl_abc('a')set_key_ctrl_abc('c')originalText = pc.paste()content = translate(originalText)pc.copy(originalText + '\n' + content)set_key_ctrl_abc('v')press_and_release(Key.enter)if __name__ == '__main__':print('program has started')with GlobalHotKeys({  # 监听键盘 Alt_R+Enter'<alt_gr>+<enter>': learn_english}) as listener:listener.join()

参考:
[1]. https://www.thepaper.cn/newsDetail_forward_13662510
[2]. https://cloud.tencent.com/document/product/551/35017

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/6784.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一个性价比超高的英语口语平台

图片来源&#xff1a;爱奇艺《一年一度喜剧大会》 最近看《二喜》看到逗逗的这句话&#xff0c;我真的太同感了——一个人不知道做什么的时候&#xff0c;好像总会想到学英语这件事。 “英语好”确实可以成为一剂强心针——更好的学业机会和更好的职业选择。 《当代国人英语学习…

有没有英语语音测试软件,推荐我用过的几款真正可以找外国人练口语的软件app...

原标题&#xff1a;推荐我用过的几款真正可以找外国人练口语的软件app 相信每一个想练好英语口语的人都在寻找可以跟外国人练习的渠道&#xff0c;我也一样。我自己有一定的英语基础&#xff0c;但是完全是哑巴英语。因此我就疯狂的寻找可以跟外国人说英语的渠道&#xff0c;在…

每个教师都必须知道的6款软件,一个比一个好用

或许大家已经发现&#xff0c;现在的教学越来越科技化&#xff0c;软件化了。今天我将给大家介绍6款每个教师都必须知道的神仙软件&#xff0c;让你的工作更加高效轻松&#xff01; MindManager 绘制思维导图可以帮助老师们梳理教学步骤以及整合教学内容。而一款可靠的思维导图…

我们开发了第一款中英双语ChatGPT检测器,还有...

每天给你送来NLP技术干货&#xff01; 来自&#xff1a;SimpleAI 那一夜... 2022年11月30号&#xff0c;OpenAI推出了ChatGPT&#xff0c;给NLP届乃至各行各业的人带来了巨大的惊喜和惊吓[1]&#xff1b;2022年12月5号&#xff0c;由于受到ChatGPT的冲击&#xff0c;Stack Over…

MJ优质博主清单;把ChatGPT调教为英语私教;绝美SD Prompt手册;AgentGPT体验全记录;2项AI工具最强更新 | ShowMeAI日报

&#x1f440;日报&周刊合集 | &#x1f3a1;生产力工具与行业应用大全 | &#x1f9e1; 点赞关注评论拜托啦&#xff01; &#x1f916; 『预测五年后的应聘场景』玩转机器人将是核心竞争优势 1. 你有多少个公用机器人&#xff08;基本的机器人操作能力&#xff09; 2. 你…

研究了一堆英语学习软件,发现了一个美国宝藏口语App,国内也能用!

图片来源&#xff1a;爱奇艺《一年一度喜剧大会》 最近看《二喜》看到逗逗的这句话&#xff0c;我真的太同感了——一个人不知道做什么的时候&#xff0c;好像总会想到学英语这件事。 “英语好”确实可以成为一剂强心针——更好的学业机会和更好的职业选择。 《当代国人英语学习…

SmartGPT 横空出世,大大提升 ChatGPT 回答准确率!

点击上方“Java基基”&#xff0c;选择“设为星标” 做积极的人&#xff0c;而不是积极废人&#xff01; 每天 14:00 更新文章&#xff0c;每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路&#xff0c;很肝~中文详细注释的开源项目RPC 框架 Dubbo 源码解析网络应…

基于ChatGPT制作的一款英语口语练习应用SpokenAi

本文介绍了一款基于ChatGPT的英语口语练习应用SpokenAi&#xff0c;包括PortAudio的安装流程和核心代码&#xff0c;以及语音合成TextToSpeech的实现。同时提供了配置文件和部署运行示例。 --由ChatGPT总结生成 一.前言 Hi&#xff0c;大家好&#xff0c;我是Baird。最近几个月…

ChatGPT专业应用:生成填空题

正文共 973 字&#xff0c;阅读大约需要 3 分钟 教育工作者必备技巧&#xff0c;您将在3分钟后获得以下超能力&#xff1a; 生成填空题 Beezy评级 &#xff1a;B级 *经过简单的寻找&#xff0c; 大部分人能立刻掌握。主要节省时间。 推荐人 | nanako 编辑者 | Linda ●此图片…

ChatGPT实战:生成演讲稿

当众发言&#xff08;演讲&#xff09;是一种传达信息、观点和情感的重要方式。通过演讲&#xff0c;人们可以在公共场合表达自己的观点&#xff0c;向观众传递自己的知识和经验&#xff0c;激发听众的思考和行动。无论是商务演讲、学术讲座还是政治演说&#xff0c;演讲稿的写…

ChatGPT自动化提高工作效率: 2分钟快速生成思维导图

一、简要说明 ChatGPT不止是一个聊天机器人&#xff0c;更是一个自然语言处理、文本内容生成模型&#xff0c;它可以理解语言规则&#xff0c;不仅仅是给你输出已有的知识内容&#xff0c;还会给到你一些创意点子&#xff1b;所以我们应该学会如何使用它&#xff0c;让它更好的…

【ChatGPT】ChatGPT自动生成思维导图

参考视频&#xff1a;https://edu.csdn.net/learn/38346/613917 应用场景&#xff1a;自学&#xff0c;“研一学生如何学习机器学习”的思维导图 问&#xff1a;写一个“研一学生如何学习机器学习”的思维导图内容&#xff0c;以markdown代码块格式输出 # 研一学生如何学习…

成立 4 个星期获得 1.13 亿美元种子轮融资,3 个 30岁+小伙草创「开源版 OpenAI」!...

整理 | 屠敏 出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09; AI 这条赛道&#xff0c;随着时间的推移&#xff0c;加入的新玩家越来越多&#xff0c;投入的资本也越来高。而这些新玩家往往都带有一个目标&#xff1a;与 OpenAI 一较高下。 这不&#xff0c;又有一…

联用多个插件可以让 GPT-4 的能力更加强大,实现更加复杂的操作

&#x1f680; 联用多个插件可以让 GPT-4 的能力更加强大&#xff0c;实现更加复杂的操作。 联用多个插件可以让 GPT-4 的能力更加强大&#xff0c;实现更加复杂的操作。 不过&#xff0c;使用插件和联网功能也有一些要注意的地方。 首先是安全性问题&#xff0c;特别是像购…

Prompt本质解密及Evaluation实战与源码解析(二)

9.4 Evaluation for Agents源码解析 如图9-4所示,转过来,我们再看一下LangChain框架代理评估(Evaluation for Agents)的源代码。 图9- 4 LangChain的evaluation agents目录 在trajectory_eval_prompt.py文件里面,写了一个非常经典的提示词。 1. """提示…

开发了一个Java库的Google Bard API,可以自动化与AI对话了

开发了一个Java库的Google Bard API&#xff0c;可以自动化与AI对话了 Google Bard是Google提供的还在实验阶段的人工智能对话服务。这明显是对标ChatGPT来的&#xff0c;它可以提供更实时的答案&#xff0c;会基于Google强大的网页数据。 为了更方便的使用并实现自动化&…

【产业互联网周报】微软官宣把聊天机器人植入Office;任正非:4月份华为自研MetaERP将面世;...

关注ITValue&#xff0c;看企业级最新鲜、最价值报道&#xff01; ChatGPT之父&#xff1a;监管机构应参与技术测试&#xff0c;减少AI对人类的威胁&#xff1b;李开复宣布亲自组建中国版ChatGPT公司&#xff0c;资金、算力将陆续到位&#xff1b;金蝶2022年亏损扩大至3.89亿元…

关于GTP-4,这是14个被忽略的惊人细节!

来源&#xff1a;华尔街见闻&#xff08;id&#xff1a;wallstreetcn&#xff09; 3月14日&#xff0c;OpenAI发布了GPT-4。向科技界再次扔下了一枚“核弹”。 根据OpenAI的演示&#xff0c;我们知道了GPT-4拥有着比GPT-3.5更强大的力量&#xff1a;总结文章、写代码、报税、写…

“写作业神器”ChatGPT究竟有多厉害?

人工智能研究实验室OpenAI推出了新一代语言模型ChatGPT&#xff0c;它能够模拟人类的语言行为&#xff0c;与用户进行自然的交互。虽然从名字上不难看出&#xff0c;ChatGPT对外宣称是目前最先进的聊天机器人之一&#xff0c;但它能做到的事情远远超出了聊天本身。作为一个 AI …

彻底了解ChatGPT的工作原理

作者&#xff1a;史蒂芬沃尔弗拉姆&#xff0c;计算机科学家 转自&#xff1a;AI研究局 作者&#xff1a;史蒂芬沃尔弗拉姆&#xff08;Stephen Wolfram&#xff09;英、美籍 计算机科学家&#xff0c; 物理学家。他是 Mathematica 的首席设计师&#xff0c;《一种新科学》一书…