拖拉验证框的位置检测

拖拉验证框的位置检测


在自动化项目中,有时会碰到拖拉验证码的拦路虎。

【这武松提了哨棒,大着步,自过景阳冈来。约行了四五里路,来到冈子下,见一大树,刮去了皮,一片白,上写两行字。武松也颇识几字,抬头看时,上面写道:“近因景阳冈大虫伤人,但有过往客商可於巳午未三个时辰结夥成队过冈,请勿自误。”】

就是这只大虫:

【只听见乱树背后扑地一声响,跳出一只吊睛白额大虫来。 武松见了,叫声“啊呀!”从青石上翻身下来,把哨棒拿在手里,闪在青石旁边。那只大虫又饥又渴,把两只前爪在地下按了一按,望上一扑,从半空里蹿下来。】
拖拉验证框的位置检测_第1张图片

F12打开firefox开发者工具,定睛一看,原来这是两张图片叠加出来的:
在这里插入图片描述
拖拉验证框的位置检测_第2张图片

如果能求出第二张图片中验证框的位置,传递给RPA自动工具,就能实现像素级的精确拖拽。

以下python代码读入图片,返回验证框离图片左边的像素数。
拖拉验证框的位置检测_第3张图片

解题思路:

图片放大来看,边框线有明显且一致的边界,如下图红蓝箭头标示的两像素列,两列相减可以得到较大的差值,而其他两相邻列是连续的图像差值不会大,借此可以定位到边框。
拖拉验证框的位置检测_第4张图片

拖拉验证框的位置检测_第5张图片

你可能感兴趣的:(自动化)