女友让我夜深十二点催她睡觉,我有Python我就不干

女友闹别扭不用担心,python做个软件轻松哄好 学编程难免有时觉得枯燥,但我们可以自己用编程来做一些有趣的事情,不仅可以排解自己的无聊,还可以给女朋友一个惊喜,增进两人感情! 人们都喜欢记住一些重要的日子,比如说跟女朋友认识的日子,结婚纪念日、周年纪念日等等。别人需要下个软件来计算,但程序员可以自己写一个。 如何设计这个软件以及如何打包成exe文件给女朋友直接运行?有兴趣的小伙伴可以接着往下看! 我们会用到 datetime 模块和 ... 阅读详情

事情是这样的:今天晚上,女朋友让我十二点催她睡觉。

在这里插入图片描述
不过,可是我实在太困了,熬不下去…… 是吧?女朋友哪有睡觉重要?

在这里插入图片描述
但,女朋友的命令,我是不敢违抗的……

在这里插入图片描述
但是睡觉也不能缺!

这时候我们该怎么办呢?是时候让Python登场了!

Python登场

这次我们来做一个自动发送微信的程序,在深夜十二点的时候给女朋友发去消息,也算是尽了一个男朋友的义务了。

安装和导入

我们需要两个模块: apscheduler , pyautogui

快捷键 Windows+r 打开运行控制框,输入 cmd,进入命令行,输入:

pip install apscheduler
pip install pyautogui

导入:

import pyautogui
from datetime import datetime
from apscheduler.schedulers.blocking import BlockingScheduler # 阻塞当前进程的调度器
# blocking类型调度器会阻塞当前进程,若你想要后台运行的调度器,可以使用以下代码:
# from apscheduler.schedulers.background import BackgroundScheduler

pyautogui

首先我们来实现自动发送消息

pyautogui 是一个非常强大的库,可以操作鼠标和键盘。我们将用它来完成自动操作电脑。

先来做一些基本设置:

pyautogui.PAUSE = 1 # 设置每一步操作的间隔(秒),可防止操作太快

然后我们登录微信,最小化。

接下来我们把鼠标放到微信的任务栏图标上,运行以下语句,获取此时光标的坐标,返回一个Point对象:

print(pyautogui.position()) # 打印坐标,Point(x=148, y=879)
icon_position = pyautogui.position() # Point(x=148, y=879)

打开微信,选择女朋友的回话窗口,将鼠标放在输入框上,同样获取光标坐标,为了将焦点锁定到输入框以方便待会的输入。

在这里插入图片描述

print(pyautogui.position()) # 打印坐标,Point(x=174, y=751)
entry_position = pyautogui.position() # Point(x=174, y=751)

接下来,控制程序依次点击这两个点:

pyautogui.click(icon_position) # 默认左键单击
# pyautogui.click(148, 879)
pyautogui.click(entry_position)
# pyautogui.click(174, 751)

打开微信并锁定焦点后,我们开始输入文本。

输入文本可以有两种方式:

  • pyautogui.typewrite([‘o’, ‘n’, ‘e’, ‘enter’])在方法中传入一个列表,里面每一元素都是单个字母或特殊按键
  • pyautogui.typewrite(‘You can type multiple letters in this way’)传入字符串,但不能同时打印字母和特殊按键。

这两种方式都不能直接输入中文,所以只能依靠你的输入法来输入中文了。

pyautogui.typewrite([*list('zhengzai '), *list('jinxing '), 'shift', *list('pyautogui'), 'shift', *list('shiyan '), 'enter'], 0.1) # 第一个参数是输入文本,第二个是输入每个字符的间隔时间

为了使我们的操作更加 人模狗样 像人的操作,我么来加上移动鼠标的代码:

pyautogui.moveTo(icon_position, duration=2) # duration为执行时长,可选
pyautogui.click(icon_position)
pyautogui.moveTo(entry_position, duration=2)
pyautogui.click(entry_position)
pyautogui.typewrite([*list('zhengzai '), *list('jinxing '), 'shift', *list('pyautogui'), 'shift', *list('shiyan '), 'enter'], 0.1) # 第二个参数为按下每一个字母的间隔,可选

看看效果:

在这里插入图片描述
当然,若是你要输入的内容实在很多,又嫌麻烦,可以通过复制粘贴来实现:

import pyperclip

pyperclip.copy('正在进行发中文试验,看到请忽略,更不要骂傻逼') # 复制
pyautogui.hotkey('ctrl', 'v') # 按下组合键的方法,ctrl+v粘贴
pyautogui.press('enter') # 按下按键

在这里插入图片描述
这样,我们便完成了自动发送微信消息的功能了。

apscheduler

APScheduler 是一个Python库,可实现延迟调度要执行Python代码的功能,可以只执行一次,也可以定期执行。可以随时添加新任务或删除旧任务。能够十分方便地进行定时任务。

scheduler = BlockingScheduler() # 实例化一个调度器
scheduler.add_job(main, 'date', run_date=datetime(2021, 8, 18, 24, 00, 00)) # 添加任务
scheduler.start()

add_job 方法在这里传了 3 个参数,第一个为到时间后要执行的函数,第二个为触发器的类型。这里选用的是 date 触发器,特定的时间点触发,作业任务只会执行一次。第三个参数 run_date 就是执行的时间。在这前我已经把自动发送消息的代码封装为了 main 函数,只需到时后调用即可。

完整代码

import pyautogui
import pyperclip
from datetime import datetime
from apscheduler.schedulers.blocking import BlockingScheduler

def main():
	pyautogui.PAUSE = 0

	icon_position = pyautogui.Point(x=148, y=879) # 任务栏图标位置
	entry_position = pyautogui.Point(x=174, y=751) # 输入框位置

	pyautogui.moveTo(icon_position, duration=1) # duration为执行时长,可选
	pyautogui.click(icon_position)
	pyautogui.moveTo(entry_position, duration=0.7)
	pyautogui.click(entry_position)
	pyperclip.copy('快去睡觉')
	pyautogui.hotkey('ctrl', 'v')
	pyautogui.press('enter')
    pyperclip.copy('笨猪')
	pyautogui.hotkey('ctrl', 'v')
	pyautogui.press('enter')
    
scheduler = BlockingScheduler() # 实例化
scheduler.add_job(main, 'date', run_date=datetime(2021, 8, 18, 24, 00, 00)) # 添加任务
scheduler.start()

完成啦!现在可以去睡觉了。

结果

第二天早上起床,我被我妈妈骂了一顿,问我为什么午夜12点的时候电脑还亮着,而且还在自己发微信!

不过,好在女朋友没丢,我成功完成了女朋友的任务!

在这里插入图片描述
关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。


这份完整版的Python全套学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

Python资料、技术、课程、解答、咨询也可以直接点击下面名片,添加官方客服斯琪↓

Python--界面UI控制,模拟键鼠操作的模块pyautogui(超详细用法) 详细介绍如何使用 pyautogui 实现鼠标控制、键盘控制、界面操作、图像匹配等功能。 阅读详情

相关推荐

iOS面试题大全(附带答案)

C语言相关面试题 1.static有什么用途? 答案:在C语言中,static主要定义全局静态变量,定义局部静态变量,定义静态函数。 static 属于静态变量,使用它修饰的变量生命周期是整个源程序。 @1.在函数体内的 static 变量的作用范围为该函数体,该变量的内存只被分配一次,因此其值在下次调用时仍维持上次的值; @2.在模块内的 static 全局变量可以被模块内所有函数访问,但不能被模块外其它函数访问; @3.在模块内的 static 函数只被这一模块内的其它函数调用,这个函数的使用范围被限

IOSNF的博客 2426

Python入坑之哄女朋友开心小技巧

前言 人生苦短,我用Python。这句话证明现在Python有多火。大约2年前我就开始接触了Python,因工作需求要自学Python ,后续的SDK打包脚本就是用Python编写的。对于Python的理解基本停留在会用阶段,深入的话就拉垮了。最近忙里偷闲,用之前自学过的知识点组合一下,搞一点有意思的事情。 你能学到的知识 Python中的JSON解析 Python中SMTP发送邮件 Python中字典的概念 文章中所用的编译器为Mac Pycharm 社区版,演示代码为Python 2.7

北京朝阳区精神病院院长 2274

Python实战:用NumPy实现LU分解与QR分解(附代码对比)

本文深入探讨了使用NumPy实现LU分解与QR分解的实战方法,通过代码对比分析了两种矩阵分解技术的原理、数值稳定性差异及核心应用场景。LU分解适用于高效求解线性方程组,而QR分解凭借其正交化特性,在求解最小二乘问题和处理病态矩阵时更具优势。文章提供了详细的Python代码示例,帮助开发者根据具体问题选择最合适的分解方法。

php55的博客 1213

程序员是如何哄女朋友的?用Python将女朋友的照片做成壁纸软件,实现桌面壁纸自动更换

话说兄弟们,女朋友生气了都是怎么哄的? 不会吧不会吧,不会有人还是单身狗吧!

人生苦短, 还不用Python? 1061

遥感图像小白--2--图像分割

遥感图像分割基础入门

Mary的博客 4236

STM32F4的sct文件理解

原文地址http://blog.sina.com.cn/s/blog_898f36590100ya2l.html ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~...

weixin_34008805的博客 995

自动化手工操作工具PyAutoGUI :键盘操作

pyautogui.typewrite('Hello world!') # 输入Hello world!字符串 pyautogui.typewrite('Hello world!', interval=0.25) # 每次输入间隔0.25秒,输入Hello world! pyautogui.press('enter') # 按下并松开(轻敲)回车键 pyautogui.press(['left', 'left', 'left', 'left']) # 按下并松开(轻敲)四下左方向键 ...

8764

GK2302量产工具下载方法,GK2302开卡教程,GK2301LT怎么开卡方法,附GK2302开卡工具,GK2301LT量产软件下载

​每种量产软件的操作流程可能略有不同,因此必须按照要求操作。为确保安全,建议使用量产部落网下载的原版量产开卡软件。

A520091000的博客 2123

逗女孩开心的python代码合集

这可以是一种可爱和个性化的向某人表达爱意的方式。当然,这只是一个非常基础的聊天机器人,如果你想编写一个更复杂的聊天机器人,你可能需要学习和使用一些更高级的技术,比如自然语言处理(NLP)和机器学习。这个脚本会不断接收用户的输入,如果用户输入“退出”,则退出循环;否则,它会从预定义的回答列表中随机选择一个回答输出。的字符串,其中包含一个浪漫的信息,可以在情人节发送给特别的人。这个代码会打印出一个浪漫的爱心信息,可以用来向特别的人表达你的爱。编写一个简单的聊天机器人给女朋友,我们可以使用Python的。

“我说再不熬夜了”的博客 3058

开发具有情感分析能力的AI Agent

本文将深入探讨开发具有情感分析能力的AI Agent的各个方面。我们将首先介绍情感分析的基础知识,包括定义、背景和应用领域。接着,我们将详细讲解情感分析的核心概念、数据处理方法和算法原理。随后,文章将展示如何设计情感分析系统架构,并进行项目实战,包括环境安装、源代码实现和案例分析。最后,我们将总结最佳实践和注意事项,为读者提供进一步学习的资源。情感分析(Sentiment Analysis),也称为意见挖掘,是自然语言处理(NLP)的一个分支。

SuperAGI2025 1146

RK3568适配MIPI屏幕触摸,触摸延时很大

我用的是系统,接了一个,设备树已经正确配置,evtest测试坐标值和触摸位置都是准确的。但是出现了一个:我在屏幕上点一下,要等大约 2 秒才能在evtest里看到坐标事件打印。这种现象在 Goodix 系列触摸驱动里比较少见,一般意味着。

小灰灰的博客 1363

神级程序员教你用代码哄好生气的女朋友,网友:我要甜甜的恋爱!

最近遇到了一件难事:我发现女友突然爱上了“十二星座”,每天翻看各种星座运势,逮着人就要给人算命,神神叨叨的,心情也同样如天上的星星那般,难以捉摸。   这可怎么办呢?为了摸清其规律,对症下药,挽回我即将逝去的爱情,我搜索“星座运势”,得到这个东东:       这可真是好东西!可是星座运势每天都不一样,如果能像日报那样每天获取到推送就太好了! 我决定使用当今最前沿的互联网云服务,...

javaxiaoheibai的博客 2万+

MEMS传感器技术深度解析:从原理到未来趋势的全面指南(智能驾驶赛道有戏)

在智能汽车每秒产生1GB数据的今天,在可穿戴设备厚度突破1毫米的极限挑战下,MEMS(微机电系统)传感器正以的三大核心优势,重塑着人类感知世界的方式。作为从业10年的MEMS工程师,我见证了这个领域从实验室走向量产的完整历程——从2005年汽车安全气囊中笨重的压阻式加速度计,到2025年智能手机中集成5种传感器的SoC芯片,MEMS技术正在书写传感器行业的摩尔定律新篇章。本文将带您穿透技术迷雾,深入解析MEMS传感器的技术密码,涵盖,并附独家整理的与。文末更提供,助您把握万亿级市场机遇。

优快云-新能源汽车研发测试专业博主 2301

OSChina 周六乱弹 —— 看见这花臂了么?赶紧叫大佬!

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33845477的博客 367

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

OSChina 周四乱弹 —— 每天都迟到是种什么样的体验

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33916256的博客 205

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

女朋友抱怨不会说情话,用python给她发了20000句!让她见识见识情话大全!

女朋友说见到别人在朋友圈里面嗮聊天情话,她在仔细的看,暂时先不聊了。 作为一名合格的程序员,应该能够读懂暗示!那就是她想要听情话,还要听好多好多情话! 程序员找个女朋友很不容易,所以就分享出来,以后谁的女朋友再又这样的需求时,直接复制就行了! 看了那些发的情话,就是个复制粘贴,搞那么长的段落,一看就是不专业。 代码如下(需要先试试自己能不能登录网页版微信): from __future__ import unicode_literals import time from wxpy imp.

Python_kele的博客 272

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

如何写一个程序,哄女朋友或者老婆开心?

如何写一个程序,哄女朋友开心?下面有个列子。

AI时代光年 1935

pyautogui库的使用教程(超详细)

这是 PyAutoGUI 的使用手册。PyAutoGUI 是适用于 Python 2 和 3 的跨平台 GUI 自动化模块。您可以控制鼠标和键盘以及执行基本图像识别以自动执行计算机上的任务。

QQVQQ的博客 6万+

女人只会影响我编程的速度

SYIKUN的博客 281

【Python】哄女朋友的那些奇技淫巧

Hi~新朋友,记得点蓝字关注狗哥哟Python里面的奇技淫巧声明“以下所有模块均可使用pip直接安装”说python是所有编程语言里面最奇葩的语言这肯定是没错了它可以做自...

tongtongjing1765的博客 3771

实现动态封禁 IP,干死爬虫

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了,只是里面的项目比较多,水平也是参差不齐,大家可以挑自己能做的项目去练练。这是我花了几天的时间去把Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。完成以上步骤后,重新加载 nginx,配置便开始生效了。3、动态配置,可以手工或者通过某种自动化的方式设置 Redis 中的黑名单。Nginx 配置,其中。

m0_57472099的博客 739

详解Python中pyautogui库的最全使用方法

在使用Python做脚本的话,有两个库可以使用,一个为PyUserInput库,另一个为pyautogui库。就本人而言,我更喜欢使用pyautogui库,该库功能多,使用便利。下面给大家介绍一下pyautogui库的使用方法。这篇文章主要介绍了详解Python中pyautogui库的最全使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。也可以使用pyautogui库帮助文档的方法,不过本人认为使用上面的方法,更加便利。

ai520wangzha的博客 2965

哄人代码(亲测有用)

今天惹母上大人生气了,在码代码时,写了一串代码,哄好了母上大人。

wjy201210070050的博客 4511

【pyautogui】PyAutoGUI 的简单使用

PyAutoGUI是一个纯Python的GUI自动化工具,通过它可以让程序自动控制鼠标和键盘的一系列操作来达到自动化测试的目的。PyAutoGUI设计简洁,全部被封装在pyautogui单个模块中,因此Python程序中只要之后便可通过符号访问pyautogui中的函数、变量。pyautogui大致分为通用功能、鼠标控制、键盘控制、屏幕窗口、消息窗 5 大类。

读书笔记 1万+

Python第三方PyAutoGUI库详解

PyAutoGUI 是一个用于进行图形用户界面(GUI)自动化的 Python 库。它允许你在屏幕上进行鼠标和键盘的模拟操作,以及获取屏幕上的信息。

m0_73608980的博客 5456

利用python程序浪漫安慰失恋妹纸

目的:昨天在朋友圈看到组里的一个妹纸貌似失恋了。于是想写个脚本程序安慰妹纸。 思路:把txt文件内容读取出来,打印心形等 # -*- coding:utf-8 -*- import sys import math import time def frange(start, end, step=1.0): if step > 0: while start < end: yield

黑面狐 1万+
上一篇: 用 python 制作高逼格的数学动画
下一篇: python+selenium+pytesseract识别图片验证码
Python_金钱豹
博客等级 码龄5年 1万+粉丝 2835原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值