滑动验证码计算滑块的距离
方法
@staticmethod
def get_distance(fg, bg):
"""
计算滑动距离
"""
target = cv2.imdecode(np.asarray(bytearray(fg.read()), dtype=np.uint8), 0)
template = cv2.imdecode(np.asarray(bytearray(bg.read()), dtype=np.uint8), 0)
result = cv2.matchTemplate(target, template, cv2.TM_CCORR_NORMED)
_, distance = np.unravel_index(result.argmax(), result.shape)
return distance
调用示例
r = requests.get(fg_url)
fg = BytesIO(r.content)
r = requests.get(bg_url)
bg = BytesIO(r.content)
# 计算滑动距离
distance = self.get_distance(fg, bg)