# Canvas元素自动化 **Repository Path**: lz-lyss/canvas-element-automation ## Basic Information - **Project Name**: Canvas元素自动化 - **Description**: 针对Canvas画布元素内包含的可操作项进行自动化, 结合参考了DrissionPage、OpenCV-python等python库进行实现 - **Primary Language**: Python - **License**: BSD-3-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-07-02 - **Last Updated**: 2025-03-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: Python, web自动化 ## README # Canvas元素自动化 本项目旨在针对Canvas画布元素进行自动化操作,结合了DrissionPage、OpenCV-python等python库进行实现。 ## 使用说明 1. 下载模型文件: 本项目使用了paddleocr和easyocr两个OCR引擎,需要先下载相应的模型文件。模型文件的下载路径可以在项目的[这里](#models)找到。 2. 更改模型路径: 如果需要更改模型路径,可以在代码中找到相应的配置参数并进行更改。 3. 图像匹配和识别: 本项目提供了多种图像匹配和识别的方法,如单个模板匹配、多个模板匹配、文字匹配等。具体的使用方法可以在代码中找到。 4. 运行代码: 在完成上述步骤后,就可以运行代码进行图像的匹配和识别图像文字了。 ## 代码架构 - `src`: 包含项目的所有源代码文件。 - `canvas_src_pictures`: 用于保存原始画布元素生成的图片。 - `_items`: 包含OCR相关类。 - `_ocr_reader.py`: OCR公共基类。 - `_easyocr.py`: EasyOCR引擎处理类。 - `_paddleocr.py`: PaddleOCR引擎处理类。 - `location_clicker.py`: 坐标位置点击类。 - `other_handle.py`: 其他处理类。 - `_errors`: 自定义异常类。 - `__init__.py`: 初始化异常类。 - `my_exceptions.py`: 自定义异常类。 - `_base`: 自定义输出日志格式类。 - `__init__.py`: 初始化日志类。 - `log.py`: 自定义日志格式类。 - `_match`: 图片匹配类。 - `__init__.py`: 初始化匹配类。 - `template_match.py`: 图片模板匹配处理类。 - `text_match.py`: 图片识别文字处理类。 - `_typing`: 自定义数据类型 - `__init__.py`: 初始化自定义数据类。 - `_typing.py`: 自定义数据格式类 - `test_pictures`: 用于测试、验证的图片。 - `__init__.py`: 初始化文件。 - `canvas_element.py`: 画布元素类。 ## 注意事项 1. 文件路径: 在使用OpenCV进行图像处理时,请确保文件路径正确,避免出现中文文件名或路径,因为OpenCV不支持中文文件名或路径。 2. 模型文件: 进行OCR文字识别相关功能前,请确保模型文件已正确下载并放置在指定路径下,否则可能会导致模型加载失败。 3. 运行环境: 本项目在Python环境下运行,建议使用Python3.10及以上的版本。 ## models - [paddleocr] - det: - https://paddleocr.bj.bcebos.com/PP-OCRv4/chinese/ch_PP-OCRv4_det_infer.tar - rec: - https://paddleocr.bj.bcebos.com/PP-OCRv4/chinese/ch_PP-OCRv4_rec_infer.tar - cls: - https://paddleocr.bj.bcebos.com/dygraph_v2.0/ch/ch_ppocr_mobile_v2.0_cls_infer.tar - [easyocr] - 模型下载介绍:https://www.jaided.ai/easyocr/modelhub/ - 基础默认 craft:https://github.com/JaidedAI/EasyOCR/releases/download/pre-v1.1.6/craft_mlt_25k.zip - ch_sim:https://github.com/JaidedAI/EasyOCR/releases/download/v1.3/zh_sim_g2.zip - en:https://github.com/JaidedAI/EasyOCR/releases/download/v1.3/english_g2.zip