0530-3433334

网站建设 APP开发 小程序

知识

分享你我感悟

您当前位置>首页 >> 知识 >> 软件开发

web界面新增数据记录为例,SQL需要一定的知识基础

发表时间:2023-11-23 13:02:11

文章来源:炫佑科技

浏览次数:184

菏泽炫佑科技

web界面新增数据记录为例,SQL需要一定的知识基础

大家好,我是安国!

我们经常会遇到需要进行大量重复操作的时候,比如在网页上填写表单、操作网页版OA、自动化测试、或者**次向新系统添加数据等。

这些操作的特点往往是:数据同构,大部分是已经存在的结构化数据; 操作比较枯燥,都是在同一个流程中点击、输入; 数据量大,消耗运营商大量精力。

那么它可以自动化吗?

2、自动化解决方案

如果您在网络上操作,这就足够了。 如果需要操作GUI界面,可能要测试一下“按键向导”是否能满足要求。 要将初始数据添加到新系统,SQL 导出和导入是*有效的方法,但可能需要一些更复杂的处理。

我多次遇到需要手动将旧数据一一录入的系统升级活动。

然而,上述情况存在一些问题。 比较复杂,按钮向导的功能还不完善,SQL需要一定的知识基础。

这里推荐一个更好的解决方案:

事实上,主要优点是比较简单。 应急使用时,可以快速构建可用的自动化操作脚本。毕竟数据处理任务本质上是紧急的,没有时间使用复杂的知识来构建完整的脚本。

三、思路和知识点

现在我们来说一下基本思想和相关知识点

本文以在Web界面批量添加数据记录为例,讲解如何自动化操作。 这个例子只是为了演示,非常简单。 您可以自行了解并迁移。

4. 操作步骤 4.1 初识

简单来说,它是一个在界面上模拟键盘和鼠标操作的包。 安装时只需使用以下语句:pip。

编写一个简单的测试程序:

import pyautogui as pag
pag.PAUSE = 1.5
pag.click(63,191) 

复制

上面的程序导入库并为每个步骤定义 1.5 秒的暂停时间(以留出操作时间),然后在距离屏幕左侧 63 像素、距离顶部 191 像素的点上单击鼠标。

4.2 坐标系

默认坐标系从屏幕左上角开始web界面新增数据记录为例,SQL需要一定的知识基础,x轴向右递增,y轴向下递增。 因此显示屏上的每个点都有自己的位置。

推而广之,当你知道界面上每个按钮的位置后,点击这些点就会执行相应的操作。

当然,这一切的前提是界面保持不变。 大多数应用程序的界面和按钮位置不会改变。 如果你有这个需求,可以参考()函数。 此函数根据您提供的图像查找屏幕上的匹配像素。 这样您就不必担心按钮移动。

为了获取屏幕的坐标系,我写了一个简单的程序来获取鼠标在屏幕上的坐标。 您可以自行下载并运行。

import pyautogui as pag 
import os 
try:
    while True:
        os.system('cls')
        a = '%4d,%4d'%pag.position()
        print(a)
except Exception as e:
    print(e) 

复制

运行上面的程序,将鼠标移动到各个按钮上,可以看到对应的坐标。

4.3 点击

点击很简单:

pyautogui.click(x=None, y=None, clicks=1, interval=0.0, button='left', duration=0.0)

复制

其中x,y是坐标,是点击次数,是点击间隔,是指三个鼠标按钮中的哪一个,是点击之间的间隔。

编写以下程序在任务、时间和新按钮之间跳转。

pag.click(63,191)
pag.click(328,191)
pag.click(384,461)
pag.click(374,191)

复制

4.4 输入

输入 ASCII 字符和键盘击键和热键如下:

至于汉字自动化软件开发,则稍微复杂一些。

4.5 汉字输入

当涉及到汉字时,无法用ASCII的解决方案来解决。 您需要导入一个包。 该包封装了系统剪贴板。 你们都知道发生了什么事。

import pyperclip 
#以下读入内容,就是把内容存入剪贴板。
pyperclip.copy('需要输入的汉字')
#以下输出内容,就是粘贴。
pag.hotkey('ctrl','v')

复制

其实非ASCII字符的输入是通过使用热键Ctrl+v模拟复制粘贴来实现的。

4.6 积分

接下来我们看一下集成的整个程序:

import pyautogui as pag
import pyperclip
pag.PAUSE = 1.5
pag.FAILSAFE = True
to = ['测试任务1','测试任务2','测试任务3','测试任务4','测试任务5',\
      '测试任务6','测试任务7','测试任务8','测试任务9','测试任务10']
for t in to:
    pag.click(63,191)
    pyperclip.copy(t)
    pag.hotkey('ctrl','v')
    pag.click(328,191)
    pag.click(384,461)
    pag.click(374,191)

复制

上述程序根据to列表的内容将操作分解为点击和粘贴,达到自动化操作的目的。 大部分代码简单易懂,可以与鼠标操作一一对应。 可能比较困难的是数据源的问题。 你总不能把所有的数据都写进程序吧?

五、数据来源

与复杂的现实世界数据源相比,*好的方法是将数据转换为csv文件。 这样,很多Excel文件都可以保存为这个文件,是文本型的,可以读写,比较方便。 SQL 数据库和 XML 等其他数据也可以导出并转换为 csv 文件。

假设你现在有一个csv格式的数据源data.csv,你需要这样做。

to = []
with open('data.csv')as f:
    lines = f.readlines()
for line in lines:
    to.append(tuple(line.split(',')))

复制

上面的代码比较简单。 它将 csv 中存储的数据存储到 to 数组中。 每行数据都是一个元组。 调用时,如4.6部分代码所示,使用for循环,并添加元组下标。 。

六、总结

本文利用包自动执行鼠标点击、输入等各种机械重复操作,可以大大提高工作效率。 这里只用到了包的点击功能和复制功能。 主要目的是简化编程,让大家在紧张繁琐的操作时,快速编写小脚本,实现自动执行。

炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等

相关案例查看更多