当前位置: 首页 > news >正文

【办公类-39-04】批量下载微信收到图片(四)-Python模拟点击下载微信收到的图片

背景说明

最近做环境,搭档发给我很多图片,需要下载下来,然后插入WORD(一页2张、1页4张)

【办公类-102-01】植物角图片打印(A4竖板一页6张,A4竖版一页2张)-CSDN博客文章浏览阅读456次,点赞18次,收藏2次。【办公类-102-01】植物角图片打印(A4竖板一页6张,A4竖版一页2张)https://blog.csdn.net/reasonsummer/article/details/146957067?spm=1011.2415.3001.5331

存在问题:

之前用UIBOT下载微信图片,但是UIBOT一个账号只能在一台上用。如果我在第二台笔记本电脑上开着UIBOT使用,那么第一台电脑UIBOT就不能打开(打开的话,第二台的UIBOT就退出了)

所以我想在第一台电脑用Python模拟点击下载图片。就不会出现开两台UIBOT的情况了。

主要用途

日常工作中,我会收到了他人发来的一堆“微信照片”,一张张下载太累了。(比如装饰教室环境,需要打印1页2张大小的蝴蝶图)

写好简单代码。用Python帮我下载, 使用前,先点开微信第一张图片(图片再页面居中)

然后运行程序

代码展示

1、用来找XY坐标的代码

''' 用Python模拟UIBOT上传园园通照片 需要获取界面上按钮的坐标 ''' import pyautogui import time # 运行后延时,让鼠标有时间放到指定的按钮上,再获取坐标 time.sleep(2) # # 获取鼠标当前位置的坐标 x, y = pyautogui.position() # # 打印坐标 print(f"Mouse position: ({x}, {y})")

2、Python下载微信图片的代码

''' Python模拟鼠标下载微信的照片(存在问题,不能停止,只能默认下载50张,删除多余) 星火讯飞,阿夏 20250415 ''' import os,time import pyautogui import pyperclip import re import win32api import win32con # 暂停,把Python页面最小化 time.sleep(5) # 先打开微信 # 读取文件名称和路径 path=r'C:\Users\jg2yXRZ\OneDrive\桌面\下载照片' os.makedirs(path,exist_ok=True) # 先点开第一张 # 预设照片数量 num=5 for i in range(num): # 打开第一图 # 移动鼠标到指定位置并右击 pyautogui.moveTo(934, 508) pyautogui.click(button='right') time.sleep(1) pyautogui.moveTo(982,554) pyautogui.click() time.sleep(2) # 输入图片名称,复制中文内容到剪贴板 name=path+fr'\{i:02}' pyperclip.copy(name) # 黏贴图片地址 pyautogui.hotkey('ctrl', 'v') time.sleep(1) pyautogui.press('enter') # # 图片显示需要时间 time.sleep(1) # 模拟按键“右箭头” pyautogui.press('right') time.sleep(1) # 'left'(左箭头) # 'up'(上箭头) # 'down'(下箭头)

运行过程视频

20250501Python下载微信对话框照片

存在问题:

UIBOT可以识别出下一张的右箭头无法点击(从蓝色变成灰色),于是对最后一张下载2-3次后,就自动报错暂停了。

但是Python无法识别张数,而且他人发来的照片,我也不知道知道一共下载几张,就需要预设一个最大数值,

如果微信上一共有5张照片,但是我最大预估了10张(num=10),那么程序会自动下载前1-5张,并对第5张图片反复下载(第5-10张都是一样的)需要手动删除。

这样的程序比手动一张张反复右键-下载图片-保存,要方便多了

----------------------------

20260812 换了一台笔记本电脑,为了下载微信照片,从CSDN上把代码下载到新电脑上。

重新选择坐标(VSCODE会自动最小化,5秒时间选择网页坐标,然后5秒后,VSCODE会自动最大化,显示出需要的(X,Y)坐标)

''' 选网页上的坐标点 运行后,VSCODE自动最小化,露出网页。 有5秒时间,手动移动鼠标到网页需要的位置上,获取坐标点 5秒后,VSCODE自动最大化,终端里面有刚才选的坐标点的坐标 豆包,Deepseek、阿夏 20250808 ''' import pyautogui import time import pygetwindow as gw # 1. 找到VSCode窗口(匹配标题含 Visual Studio Code) vscode_wins = gw.getWindowsWithTitle("Visual Studio Code") if not vscode_wins: print("未找到VSCode窗口,请先打开VSCode再运行!") else: win = vscode_wins[0] # 自动最小化VSCode win.minimize() print("VSCode已自动最小化,你有5秒时间移动鼠标到目标位置") time.sleep(5) # 等待5秒给你放鼠标 # 获取当前鼠标坐标并打印 x, y = pyautogui.position() # print(f"\n已捕获鼠标坐标:X = {x} , Y = {y}") print(f"\n已捕获鼠标坐标:{x},{y}") # 934,354 # 自动最大化VSCode win.maximize() print("VSCode已自动最大化,程序结束")

微信下载另存为的按钮位置有变化,重新选择,图片右击的位置,重新找到 另存为 按钮的位置

重新丰富代码(自动缩小VS,下载后自动放大VS)

''' Python模拟鼠标下载微信的照片(存在问题,不能停止,只能默认下载50张,删除多余) 添加自动缩小,完成后自动放大页面 星火讯飞,阿夏 20260812 ''' import os,time import pyautogui import pyperclip import re import win32api import win32con # 暂停,把Python页面最小化 import openpyxl import pyautogui import time import pyperclip import pygetwindow as gw # 1. 找到VSCode窗口(匹配标题含 Visual Studio Code) vscode_wins = gw.getWindowsWithTitle("Visual Studio Code") if not vscode_wins: print("未找到VSCode窗口,请先打开VSCode再运行!") else: win = vscode_wins[0] # 自动最小化VSCode win.minimize() print("VSCode已自动最小化,你有5秒时间移动鼠标到目标位置") time.sleep(5) # 等待5秒给你放鼠标 # 先打开微信 # 读取文件名称和路径 path=r'C:\Users\mhjg2\Desktop\下载照片' os.makedirs(path,exist_ok=True) # 先点开第一张 # 预设照片数量 num=20 for i in range(num): # 打开第一图 # 移动鼠标到指定位置并右击 pyautogui.moveTo(934, 508) pyautogui.click(button='right') time.sleep(1) pyautogui.moveTo(982,554) pyautogui.click() time.sleep(2) # 输入图片名称,复制中文内容到剪贴板 name=path+fr'\{i:02}' pyperclip.copy(name) # 黏贴图片地址 pyautogui.hotkey('ctrl', 'v') time.sleep(1) pyautogui.press('enter') # # 图片显示需要时间 time.sleep(1) # 模拟按键“右箭头” pyautogui.press('right') time.sleep(1) # 'left'(左箭头) # 'up'(上箭头) # 'down'(下箭头) # 自动最大化VSCode win.maximize() print("VSCode已自动最大化,程序结束")

20260812自动下载微信照片(放大缩小VScode)

http://www.jsqmd.com/news/1386536/

相关文章:

  • PDF补丁丁:免费开源工具,轻松解决PDF编辑难题
  • 为什么选择typed-scss-modules?5大优势让CSS Modules开发效率提升300%
  • 2026 内蒙古景观房选型指南:服务流程、交付周期与避坑要点 - 中国华商产业观察网
  • ESXi7.0安装界面键盘鼠标无响应故障完整排错指南
  • 百联 OK 卡回收指南|闲置预付卡合理处置方式解析 - 团团收购物卡回收
  • 终极免费开源AI图像增强工具:Upscayl完整使用指南
  • 3步彻底卸载Microsoft Edge:Windows系统优化终极指南
  • 2026年居家隔热膜实力供应企业甄选:防晒遮阳/隐私防爆/节能降温,高性价比工厂能力解析与选型指南 - 卓企推荐
  • 2026年度北京餐饮标书代写优质机构甄选|正规餐饮服务投标文件编制电子版制作专业推荐 - 安华招标
  • 2026年8月渭南房屋漏水科普:台风暴雨叠加回潮,房屋渗水维修怎么选 - 筑宅安
  • 企业级智能体架构:从零实现四大智能体模式的分布式解决方案
  • gh_mirrors/cl/cloth-segmentation训练指南:基于iMaterialist数据集的模型训练完整流程
  • Abaqus混凝土梁三点弯曲开裂模拟基于随机多边形骨料及界面过渡区模型
  • 如何快速掌握大模型与强化学习算法:100+原创图解完全指南
  • 如何用ZyPlayer打造你的终极跨平台观影神器:10个实用技巧大揭秘
  • AutoSchemaKG:革命性知识图谱构建框架,无需预定义模式即可实现全自动知识图谱构建
  • 图形学渲染管线全解:从顶点到像素
  • 2026组装线生产厂家选购避坑,家电装配线定制核查安装调试能力 - 寻茫精选
  • 法人委托公证授权委托书怎么办?手把手教你少跑腿、不踩坑! - 指上通
  • PhotoGIMP完整指南:免费把GIMP变成Photoshop界面的配置补丁,一个文件夹搞定
  • 2026企业标讯平台哪里有?正规靠谱服务商盘点、深度解析、选型攻略+避坑FAQ,附**平台服务能力详解 - 商业大观
  • 2026年新疆旅行团怎么选?从行业视角看懂纯玩团的真相 - 新闻快传
  • 杭州设计师一对一专属服务公司推荐 悟空脉爆可放心托付 - 装企精灵GEO
  • 一文搞懂lamp-boot的网关统一鉴权:从原理到实践的完整教程
  • 怎样高效处理PDF文档:PDF补丁丁专业实战方案
  • 自动化装配线哪家做的比较靠谱,2026长三角非标厂家实力横向对比 - 寻茫精选
  • 5分钟快速上手:Hermes WebUI让你的AI助手拥有完美浏览器界面
  • 海牙认证本科学历怎么办?明细流程表,一次办清不返工! - 指上通
  • 探索Giffy Dialog核心组件:从GiffyBottomSheet到EntryAnimation全解析
  • TransUNet医学图像分割:从零开始掌握10个关键技巧