实现用python给微信指定联系人在指定时间发送消息(仅供学习)

发这个简单的程序主要是为了增加朋友间的感情,但是不能每天定时几个早安,晚安,吃了吗,爱你等等等糊弄女朋友。

我们先实现第一部分给指定人发消息,这里我用的是mac系统。调用的是pyautogui库和pyperclip库,安装方法很简单用pip。

以我的电脑为例:

pip3 install pyautogui
pip3 install pyperclip

然后在解释器中安装软件包

这里解释一下为什么用pyperclip库,因为我发现我的pyautogui不能写入中文,这样在后面搜索联系人时会出现无法搜索联系人。我利用pyperclip将中文字符串存入粘贴板中在按下ctrl v 就可以代替写中文字符串。接下来第一步调库

import time
import pyperclip
import pyautogui

接下来我们实现几个步骤:

(下面的快捷键都是mac的,win的快捷键大家百度一下很简单)

1·打开微信的主页版:ctrl+command+w

(这个我在程序里执行了3次,因为为了防止打卡主页板有微信其他页面阻挡的情况)

def openWechat(str1,str2,str3):
    pyautogui.keyDown(str1)
    pyautogui.keyDown(str2)
    pyautogui.keyDown(str3)
    pyautogui.keyUp(str1)
    pyautogui.keyUp(str2)
    pyautogui.keyUp(str3)
openWechat('ctrl','command','w')
openWechat('ctrl','command','w')
openWechat('ctrl','command','w')

2·跳转到微信的搜索功能:command+f

def searchWechat():
    pyautogui.keyDown('command')
    pyautogui.keyDown('f')
    pyautogui.keyUp('command')
    pyautogui.keyUp('f')
searchWechat()

3·输入要发送消息的联系人的备注:

这里就用了pyperclip库,将名字放入粘贴板中。再按一个回车。

pyperclip.copy("好基友")#查找人姓名
paste()
time.sleep(1)
pyautogui.press('\n')
time.sleep(1)

4·最后发送要发送的消息这步脑洞就可以大一点,比如我们可以发送图片啥的。不仅仅是文字,但是本人就用文字简单说一下和3·差不多的步骤。

pyperclip.copy("爱你")#需要发送的消息内容
paste()
pyautogui.press('\n')

第一部分的全部代码如下:

import time
import pyperclip
import pyautogui
#因为pyautogui不能写入中文所以调用pyperclip库用复制粘贴的方式来写中文
def openWechat(str1,str2,str3):
    pyautogui.keyDown(str1)
    pyautogui.keyDown(str2)
    pyautogui.keyDown(str3)
    pyautogui.keyUp(str1)
    pyautogui.keyUp(str2)
    pyautogui.keyUp(str3)
def searchWechat():
    pyautogui.keyDown('command')
    pyautogui.keyDown('f')
    pyautogui.keyUp('command')
    pyautogui.keyUp('f')
def paste():
    pyautogui.keyDown('command')
    pyautogui.keyDown('v')
    pyautogui.keyUp('command')
    pyautogui.keyUp('v')
openWechat('ctrl','command','w')
openWechat('ctrl','command','w')
openWechat('ctrl','command','w')
searchWechat()
pyperclip.copy("好基友")#查找人姓名
paste()
time.sleep(1)
pyautogui.press('\n')
time.sleep(1)
pyperclip.copy("爱你")#需要发送的消息内容
paste()
pyautogui.press('\n')#内容

接下来我们实现定时发送这个很简单,win系统有任务定时启动的功能。这里我是mac系统我用的是crontab控制程序的启动。

crontab -l 查看计划
crontab -e 添加修改计划
crontab -r 删除计划
举个例子每天12点20分启动程序
20 12 * * * /usr/local/bin/python3 /library/daka.py
//注意这里的python和文件都是绝对路径不是相对路径。

win系统怎么做大家搜一下很简单的。mac系统的小伙伴可以搜一下crontab咋用。

大家也可以研究一下pyautogui的更多用法比如可控制鼠标,利用鼠标位置定时给好基友打电话。

这样就能实现每天12点20分给基友发一个爱你。更好的维持友谊。

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值