news 2026/5/1 3:05:10

【办公类-124-01】20260121Python批量修改“园园通改版后的幼儿数据缺失(出生地区县、籍贯区县)”

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【办公类-124-01】20260121Python批量修改“园园通改版后的幼儿数据缺失(出生地区县、籍贯区县)”

背景需求:

上周“园园通”(上海的幼儿数据采集平台)突然更新的“直报通”的页面

导致全部幼儿都变成需要处理的数据

点开一看“总园-中大班”幼儿信息页,原来是幼儿的“出生地区县、籍贯城市、籍贯区县”需要更新。

几百条要参考下面的户籍地址进行修改,实在崩溃!

又看“分园-托小班”,这里只有““出生地区县、籍贯区县”需要填写。

原来托小班的项目里,所以孩子无论是否本市户籍,都默认籍贯身份是上海,所以籍贯城市就默认上海。因此,只需要填写“出生地区县”“籍贯区县”。

大班升学系统应用的数据并不是“园园通”的数据,因此我对托小班的数据只需要“填全”而不需要“准确”。

因此默认对托小班的出生地区县、籍贯区县都填写“闵行区”

然后把页面下滑到最下面,按保存

这一块,完全可以用一个Python模拟坐标来实现“三次按钮”

''' 园园通新版,有大量孩子的数据不全。 包含Vscode界面最小化,完成后csdn界面也最小化 星火讯飞,deepseek、阿夏 # 打开火狐浏览的园园通新版yyt,默认页面大小,100% 逐条选择出生区县,籍贯区县(不管是不是上海户籍,都选两个闵行) 20260121 ''' import os,time import pyautogui import pyperclip import re import win32api import win32con import time import pygetwindow as gw # 获取当前活动窗口。把P测试测试01 current_window = gw.getActiveWindow() if current_window: current_window.minimize() else: print("未找到活动窗口") time.sleep(2) # 预设人数,如果10人 看页面左上角的 num = 10 for i in range(1, num + 1): # 修改 pyautogui.moveTo(1785, 451) pyautogui.click() time.sleep(5) # 移动到出生地区县的三角 pyautogui.moveTo(1640, 737) pyautogui.click() time.sleep(1) # 点击下箭头10次 for _ in range(8): pyautogui.press('down') time.sleep(0.1) # 稍微等待一下,确保每次按键都被处理 pyautogui.press('enter') time.sleep(2) # 移动到籍贯区县的三角 pyautogui.moveTo(1633, 798) pyautogui.click() time.sleep(1) # 点击下箭头10次 for _ in range(8): pyautogui.press('down') time.sleep(0.1) # 稍微等待一下,确保每次按键都被处理 pyautogui.press('enter') time.sleep(2) # 鼠标移动到滚动条,再详细滚 pyautogui.moveTo(1911, 576) for x in range(14): pyautogui.click (1916, 1039) time.sleep(0.1) # 蓝色保存按钮 pyautogui.click(902, 1015) time.sleep(5) # # 选择Python # pyautogui.click(910, 516) # time.sleep(1) # 关闭所有打开的窗口 pyautogui.moveTo (1889, 19) pyautogui.click() time.sleep(1) # 获取当前活动窗口 CSDN最小化 current_window = gw.getActiveWindow() if current_window: current_window.minimize() else: print("未找到活动窗口")

运行到一半,我发现里面有些出生地写了外地,导致有三个框要填写,程序就报错了

因此代码里面我再加一个身份证号码作为筛选

我发现只要写一次3101就行,返回后这个3101还在

''' 园园通新版,有大量孩子的数据不全。 包含Vscode界面最小化,完成后csdn界面也最小化 星火讯飞,deepseek、阿夏 # 打开火狐浏览的园园通新版yyt,默认页面大小,100% 逐条选择出生区县,籍贯区县(不管是不是上海户籍,都选两个闵行) 20260121 ''' import os,time import pyautogui import pyperclip import re import win32api import win32con import time import pygetwindow as gw # 获取当前活动窗口。把P测试测试01 current_window = gw.getActiveWindow() if current_window: current_window.minimize() else: print("未找到活动窗口") time.sleep(2) # 预设人数,如果10人 看页面左上角的 # 输入身份证前面数据 name=f'3101' pyautogui.moveTo (1072, 275) pyautogui.click() pyperclip.copy(name) # 黏贴图片地址 pyautogui.hotkey('ctrl', 'v') time.sleep(1) # 检索 pyautogui.moveTo (1576, 277) pyautogui.click() time.sleep(2) num = 10 for i in range(1, num + 1): # 修改 pyautogui.moveTo(1785, 451) pyautogui.click() time.sleep(5) # 移动到出生地区县的三角 pyautogui.moveTo(1640, 737) pyautogui.click() time.sleep(1) # 点击下箭头10次 for _ in range(8): pyautogui.press('down') time.sleep(0.1) # 稍微等待一下,确保每次按键都被处理 pyautogui.press('enter') time.sleep(2) # 移动到籍贯区县的三角 pyautogui.moveTo(1633, 798) pyautogui.click() time.sleep(1) # 点击下箭头10次 for _ in range(8): pyautogui.press('down') time.sleep(0.1) # 稍微等待一下,确保每次按键都被处理 pyautogui.press('enter') time.sleep(2) # 鼠标移动到滚动条,再详细滚 pyautogui.moveTo(1911, 576) for x in range(14): pyautogui.click (1916, 1039) time.sleep(0.1) # 蓝色保存按钮 pyautogui.click(902, 1015) time.sleep(5) # # 选择Python # pyautogui.click(910, 516) # time.sleep(1) # # 关闭所有打开的窗口 # pyautogui.moveTo (1889, 19) # pyautogui.click() # time.sleep(1) # # 获取当前活动窗口 CSDN最小化 # current_window = gw.getActiveWindow() # if current_window: # current_window.minimize() # else: # print("未找到活动窗口")

还剩非沪籍的孩子

我准备遇到报错,修改后再次运行。这个只能消耗时间,原则上都是两个框。只有个别人会三个框。

漫长运行后,未填全幼儿没有了

同样方式做一分园和总园:先把3101的孩子做掉

虽然电脑做时间也很长,也容易中断,但是可以减少人力反复操作的暴躁感,顺利运行时,还能够做点其他事情。

做了两个小时,处理掉100多条,明天继续

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 22:46:37

数据库迷局:select for update 锁的真相,90%的开发者都踩过坑!

一、开篇直击痛点:为什么需要 select for update 锁? 做后端开发的同学,大概率遇到过这样的场景: 电商秒杀:100 件商品,1000 人抢购,如何避免超卖? 余额支付:用户账户余额 100 元,同时发起两笔 80 元支付,如何防止余额为负? 库存扣减:多线程同时操作同一商品库存…

作者头像 李华
网站建设 2026/4/28 1:21:30

【C#程序员入门AI】2026年必知的AI生态与技术路线图

文章目录🚀 开篇先唠两句一、先搞懂:2026年C# AI生态,到底有啥?1. 核心工具三件套(必装)2. 大模型接入方式(2026主流)3. 2026新宠:AI Agent生态4. 向量与RAG(…

作者头像 李华
网站建设 2026/4/8 9:30:35

springboot_ssm842智慧家政在线预约管理系统的设计与实现ssm

目录具体实现截图智慧家政在线预约管理系统的设计与实现系统所用技术介绍写作提纲源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!具体实现截图 智慧家政在线预约管理系统的设计与实现 该系统基于SpringBoot和SSM框架开发,…

作者头像 李华
网站建设 2026/4/29 2:01:11

微信小程序生命周期

在微信小程序开发中,生命周期是贯穿全局的核心逻辑,决定了代码在不同阶段的执行时机。无论是初始化全局数据、请求接口、操作DOM,还是释放资源,都需要依赖生命周期钩子函数精准控制。 小程序生命周期分为两大维度:应用…

作者头像 李华
网站建设 2026/4/18 15:47:30

Java毕设项目:基于springboot的元宇宙平台上的消费扶贫专柜管理系统(源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/3 5:50:42

计算机Java毕设实战-基于springboot的元宇宙平台上的消费扶贫专柜管理系统【完整源码+LW+部署说明+演示视频,全bao一条龙等】

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华