【系统自动化开发】Python实现广东省公务员报名系统网站自动登录

  • 【系统自动化开发】Python实现广东省公务员报名系统网站自动登录
    • 一、原理
    • 二、代码

【系统自动化开发】Python实现广东省公务员报名系统网站自动登录

本文通过使用PyAutoGUI控制的鼠标、键盘操作来实现广东省公务员报名系统网站(https://ggfw.gdhrss.gov.cn/gwyks/index.do)自动登录。基于此,可以实时监控并记录人工操作步骤,通过记忆程序可自动化重复实现这一操作。(此处只是设想,抛砖引玉,有兴趣的可以试一下!)

一、原理

PyAutoGUI是根据电脑上的图形界面坐标定位来实现自动化操作的。按照我们登陆一个网站的过程:
       第一,先打开浏览器(此处用的是QQ浏览器);
       第二,输入广东省公务员报名系统网址https://ggfw.gdhrss.gov.cn/gwyks/index.do;
       第三,输入账号和密码,由于本次浏览器已保存账号密码,此步骤可省略;
       第四,识别并输入验证码,通过调用百度OCR文字识别来获取验证码,并自动输入;
       第五,登录即可。
       (注意:每台电脑浏览器所在位置不一定相同,只需更改浏览器坐标即可,测量图标坐标可参考链接: python使用matplotlib绘制鼠标路径)

二、代码

# -*- coding = utf-8 -*-
# @Time : 2021/3/18 22:31
# @Author : 陈良兴
# @File : Python实现广东省公务员报名系统网站自动登录.py
# @Software : PyCharmimport pyautogui
import time
import requests
import base64# 打开QQ浏览器
def OpenQQBrowser():# 双击浏览器图标,打开浏览器,浏览器位置(314,749)pyautogui.click(x=314, y=749, clicks=2, interval=0.25, button='left')# 截图
def jietu():region = (973, 464, 85, 37)name = "screenshot.png"pyautogui.screenshot(region=region, imageFilename=name)# 获取马甲
def gettoken():# client_id 为官网获取的AK, client_secret 为官网获取的SKhost = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=8BfOPz0hI1iROQqZCadVxEYj&client_secret=D1fiXcrRsjcEqu1QnMRagTucUTlERvO2'response = requests.get(host)# if response:#     print(response.json())return response.json()# 把图片里的文字识别出来
def img_to_str():# 通用文字识别(标准版)# request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/general_basic"# 通用文字识别(高精度版)# request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic"# 网络图片识别request_url = "https://aip.baidubce.com/rest/2.0/ocr/v1/webimage"# 二进制方式打开图片文件f = open('screenshot.png', 'rb')img = base64.b64encode(f.read())params = {"image": img}access_token = gettoken()request_url = request_url + "?access_token=" + access_token['access_token']headers = {'content-type': 'application/x-www-form-urlencoded'}response = requests.post(request_url, data=params, headers=headers)result_list = response.json()words_result = result_list['words_result'][0]words = words_result['words']return words.strip()def main():# 输入网址time.sleep(5)pyautogui.click(x=423, y=47, clicks=1, interval=0.25, button='left')pyautogui.keyDown('shift')pyautogui.keyUp('shift')pyautogui.typewrite('https://ggfw.gdhrss.gov.cn/gwyks/index.do')pyautogui.keyDown('enter')pyautogui.keyUp('enter')# 点击设置,键入登录界面time.sleep(10)pyautogui.click(x=147, y=205, clicks=1, interval=0.25, button='left')time.sleep(5)# 截图验证码保存下来jietu()# 读取截图,进行文字识别code_str = img_to_str()# print(code_str)# 输入验证码pyautogui.click(x=884, y=484, clicks=1, interval=0.25, button='left')pyautogui.keyDown('shift')pyautogui.keyUp('shift')pyautogui.typewrite(code_str)# 登录pyautogui.click(x=935, y=557, clicks=1, interval=0.25, button='left')if __name__ == '__main__':OpenQQBrowser()main()

【系统自动化开发】Python实现广东省公务员报名系统网站自动登录相关推荐

  1. 导览系统定制开发_联联周边游系统源码定制开发平台方案

    点击上方关注我们! 联联周边游系统开发,找[金生157威6875店2419同号]联联周边游软件开发,联联周边游系统APP开发,联联周边游系统小程序开发,联联周边游系统开发模式,联联周边游系统平台开发, ...

  2. 【Python】基于Selenium实现上海大学校园网自动登录

    [Python]基于Selenium实现上海大学校园网自动登录 安装selenium Selenium官网 以anaconda环境为例,创建一个Selenium的虚拟环境,若不需要可以不做第一.二步 ...

  3. 用JSP/Servlet应用开发一个简单的考试报名系统

    用JSP/Servlet实现一个简单的考试报名系统 背景 一.任务/要求 二.对项目需求进行简要的建模概括分析. 2.项目实现. 2.1项目结构. 2.1.1层次结构 2.1.1数据表结构. 2.2项 ...

  4. 毕业设计外卖点餐系统,外卖点餐系统毕业设计开发需求分析,订餐外卖点餐系统毕业设计分析数据库设计

    项目背景和意义 目的:本课题主要目标是设计并能够实现一个基于python的校园排课选课系统,整体网站系统基于B/S架构,技术上使用基于python的Django框架来实现:通过后台添加设置校园信息.录 ...

  5. python租车系统_使用Python实现租车计费系统的两种方法

    您的位置:首页 > 站长学院 > 网络技术    正文内容 使用Python实现租车计费系统的两种方法 使用Python实现租车计费系统的两种方法 更新时间:2018-09-29 18:0 ...

  6. 全新系统平台开发搭建(礼品试客系统+佣金模式双通道部署)

    一.全新试客模式                                                                                            ...

  7. Python实现网站自动登录---傻瓜教程

    本文介绍使用谷歌浏览器chrome自动登录网页, 下载谷歌浏览器:https://www.google.cn/chrome/,找到对应电脑操作系统(我的是WIN7 64位)的版本下载并安装. 1.首先 ...

  8. Python《使用Selenium 和pyautogui 实现自动登录淘宝》

    有了上一博文学习即基础,这一节想来学习下自动登录淘宝. 直接整上测试代码: from selenium import webdriver # import logging import time fr ...

  9. python 成绩分析系统_用Python编写成绩管理分析系统(故事升级版)

    目录 项目总览 生活小故事引入 项目思路 项目实现 功能改善 代码展示 效果演示 项目后期 项目适用 每文一语 项目总览 生活小故事引入 微风和煦,散乱在办公桌上的测验小试卷还有几分"热度& ...

最新文章

  1. 开源:数据可视化分析平台 DataGear 1.11.1 发布
  2. 基于元组,根据月份,计算天数.(Python)
  3. vc++ 提取网页上的文字_网页内容不让你复制?老师傅教的这招太绝了,1键提取全网文字...
  4. 【bfs】廉价最短路径(2013特长生 T4)
  5. 数据分析-书籍整理(二)
  6. C++基础11-类和对象之操作符重载2
  7. 功率曲线k值_特性曲线在参数计算中的应用
  8. ASP.NET MVC中,通用的异常处理
  9. ios弧形进度条_iOS手把手教你实现圆形进度条
  10. 英语学术论文写作常用词汇
  11. 什么是bypass(转载)
  12. 诞生11年,入华9年,今年的智慧城市会更好吗?
  13. Django项目实战——10—(修改地址前后端逻辑、删除地址前后端逻辑、设置默认地址、修改密码、虚拟机安装docker/FastDFS、电商-商品知识、首页广告数据库表分析、商品信息数据库表分析)
  14. 微博、微信,媒体选择何去何从
  15. 量子计算机物理装置的总称,量子到底是什么?解读量子世界以及量子的实际应用!...
  16. arm工控主板,三星S5P4418嵌入式开发板
  17. 8421码到5421码的转换_5421码8421码转化的逻辑表达式怎么样的?
  18. 如何将域名解析到网站上?
  19. 腾讯智慧交通的「KPI底座」
  20. 赤峰中考计算机考试软件,赤峰中考信息技术实施细则

热门文章

  1. linux强制退出命令行_在Linux命令行上使用强制
  2. 基于JAVA和ACCESS数据库实现的药品销售管理系统
  3. www.男生女生.cn
  4. Mapchart 绘制基因在染色体上的分布图
  5. 数据结构——图——存储结构——邻边矩阵
  6. 山东省16个地级市行政区划 (2023)
  7. 使用GITHUB笔记
  8. 超级卷的卷烟厂,名校生争当操作工,做一天休一天。。。
  9. word打印缺字解决方案
  10. Python自然语言处理 NLTK 库用法入门教程【经典】