Python RPA简单开发实践(selenium登陆浏览器自动输入密码登陆)

打开csdn博客,简单版

class BS:def __init__(self, url):self.url = url# self.password = password# self.username = usernamedef login_url(self):from selenium import webdriver# 不自动关闭浏览器option = webdriver.ChromeOptions()option.add_experimental_option("detach", True)# 注意此处添加了chrome_options参数driver = webdriver.Chrome(options=option)driver.get(self.url)person = BS("https://www.csdn.net/")
person.login_url()

进阶版

自动化输入密码登陆堡垒机

定位元素信息

例如定位用户名的元素信息,视图如下:

 所以可以通过id属性,获取到的用户名元素是“ user”

代码
import time
from selenium import webdriver
from selenium.webdriver.common.by import Byclass Browser:def __init__(self, url, username, password, element_name, element_password, element_login):self.url = urlself.password = passwordself.username = usernameself.element_name = element_nameself.element_password = element_passwordself.element_login = element_logindef login_url(self):# 不自动关闭浏览器option = webdriver.ChromeOptions()option.add_experimental_option("detach", True)# 注意此处添加了chrome_options参数driver = webdriver.Chrome(options=option)driver.get(self.url)# 获取访问页面时的”高级“ 和 ”继续访问“的页面元素按钮advanced_button = driver.find_element(by=By.ID, value="details-button")advanced_button.click()proceed_button = driver.find_element(by=By.ID, value="proceed-link")proceed_button.click()# 通过id查找用户名和密码输入框,获取元素driver.find_element(by=By.ID, value=self.element_name).send_keys(self.username)driver.find_element(by=By.ID, value=self.element_password).send_keys(self.password)# 获取登陆按钮的页面元素login_button = driver.find_element(by=By.ID, value=self.element_login)login_button.click()time.sleep(5)if __name__ == "__main__":person = Browser("https://1.1.1.1/fort/login", "your_username", "your_pasword", "用户名属性名", "密码属性名", "登陆属性名")person.login_url()H3C = Browser("https://2.2.2.2/login.html", "your_username", "用户名属性名", "密码属性名", "登陆属性名")H3C.login_url()
返回:

就是实际的浏览器自动登陆,模拟了人工鼠标点击和输入用户密码的方式

注意事项:

1.针对不同的url,打开浏览器的方式是固定的

2.需要确认:

        访问https时的 “高级”按钮

        ”继续访问“ 按钮

        “用户名“和”密码“按钮

        “点击登陆”的按钮属性要确保匹配能找的到就可以了

更多详细的用法可以参考这篇博客,写的很详细:

selenium用法详解【从入门到实战】【Python爬虫】【4万字】_selenium用法详解4万字csdn-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/285709.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue 若依框架 form-generator添加表格组件和动态表单组件

效果图: 在若依框架自带的流程表单配置基础上添加这两个组件 config.js // 表单属性【右面板】 export const formConf {formRef: elForm,formModel: formData,other: other,size: medium,labelPosition: right,labelWidth: 100,formRules: rules,gutter: 15,dis…

LeetCode每日一题[c++]-322.零钱兑换

题目描述 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回 -1 。 你可以认为每种硬币的数量是无…

游戏提示steam_api64.dll丢失怎样修复?教你5种快速修复的方法

在计算机系统中,如果未能成功找到或加载steam_api64.dll文件,可能会引发一系列的问题和故障现象。这个特定的DLL文件是Steam平台的核心组件之一,对于运行基于Steam平台的游戏或应用至关重要。当系统提示“找不到steam_api64.dll”时&#xff…

抖音视频关键词爬虫批量采集软件|视频提取下载工具

视频关键词批量采集软件 — 助力您快速获取所需视频 主要功能: 关键词批量提取视频和单独视频提取,提取后下载功能。 功能解析: 1. 关键词批量提取视频的解析 通过输入关键词进行视频搜索和提取。例如,输入“汽车配件”&#x…

N9010B EXA 信号分析仪 10 Hz 至 44 GHz

N9010B EXA 信号分析仪 10 Hz 至 44 GHz 产品综述 <<<<频率范围&#xff1a;10 Hz 至 44 GHz>>> keysight N9010B EXA 信号分析仪&#xff0c;10 Hz 至 44 GHz无论是增强产品性能还是提高测试吞吐量&#xff0c;您的通用型信号分析仪都要有能力满足各…

为什么电商系统一定要跟企业ERP做数据对接?

一篇文章告诉你&#xff0c;为什么电商系统一定要跟企业ERP做数据对接&#xff1f; 在电商日益发展的情况下&#xff0c;每个电商企业的单量越来越大。但是电商系统对于财务来说并不友好&#xff0c;所以企业会另外上一套财务系统方便财务做账和企业内部管理。那如果还是按照之…

后端常问面经之操作系统

请简要描述线程与进程的关系,区别及优缺点&#xff1f; 本质区别&#xff1a;进程是操作系统资源分配的基本单位&#xff0c;而线程是任务调度和执行的基本单位 在开销方面&#xff1a;每个进程都有独立的代码和数据空间&#xff08;程序上下文&#xff09;&#xff0c;程序之…

产品经理面试自我介绍,这3大错误千万别犯!

金三银四求职季&#xff0c;你是不是也有面试的冲动&#xff01;但面试并不是头脑一热就能取得好结果&#xff0c;在此之前&#xff0c;必须得有周全的准备&#xff0c;才能应对好面试官的“连环问”&#xff01; 所以&#xff0c;今天这篇产品经理面试干货分享给大家~ 今天文…

MySQL-1.数据库的基本操作

1. 数据库的基本操作 show databases; information_schema&#xff1a;信息图式&#xff0c;存储服务器管理数据库的信息 mysql&#xff1a;存放系统信息&#xff0c;用户名密码等 performance_schema&#xff1a;性能图式 sys&#xff1a;系统文件 1.1 创建数据库-studen…

流畅的 Python 第二版(GPT 重译)(六)

第三部分&#xff1a;类和协议 第十一章&#xff1a;一个 Python 风格的对象 使库或框架成为 Pythonic 是为了让 Python 程序员尽可能轻松和自然地学会如何执行任务。 Python 和 JavaScript 框架的创造者 Martijn Faassen。 由于 Python 数据模型&#xff0c;您定义的类型可以…

【设计模式】实战篇

目录标题 【实战一】模板方法模式抽象类子类 【实战一】模板方法模式 抽象类 定义一个抽象类&#xff1a;FarmWorkNodeRecord&#xff1a;表示其记录是用来操作计划的节点对象的。 public abstract class FarmWorkNodeRecordService {// 模拟Mapperprivate String plantPlan…

Arduino中的map函数

一、案例 val analogRead(dyPin); //读取模拟口的模拟量数值 dyValuemap(val,0,1023,0,500);//这个函数是将电位器调节的模拟量的值按比例转换成对应的电压量 问题&#xff0c;为什么不是0~499呢&#xff1f; 其实也行↓ 当map(val, 0, 1023, 0, 500)被调用时&#xff0…

关于异业联盟模式做成小程序的可行性分析

随着移动互联网的快速发展&#xff0c;小程序作为一种轻量级应用&#xff0c;受到了越来越多企业和用户的青睐。而异业联盟模式则是一种有效的商业合作方式&#xff0c;能够实现资源共享、优势互补和共同发展。将异业联盟模式做成小程序&#xff0c;不仅可以提高用户体验&#…

[论文笔记] Dual-Channel Span for Aspect Sentiment Triplet Extraction

一种利用句法依赖和词性相关性信息来过滤噪声&#xff08;无关跨度&#xff09;的基于span方法。 会议EMNLP 2023作者Pan Li, Ping Li, Kai Zhang团队Southwest Petroleum University论文地址https://aclanthology.org/2023.emnlp-main.17/代码地址https://github.com/bert-ply…

海外盲盒APP系统开发,探寻盲盒的海外机遇

目前&#xff0c;盲盒在我国受到了消费者的欢迎。在各类影视动漫的火热下&#xff0c;热衷于娱乐消费的年轻人成为了盲盒的主要消费人群。 在国外&#xff0c;盲盒也同样深受海外消费者的喜爱。近几年&#xff0c;盲盒在海外的销售量急速上升&#xff0c;创下了新高。 随着盲…

Windows 7 一键恢复 - 联想拯救系统

Windows 7 一键恢复 - 联想拯救系统 1. 联想拯救系统1.1. OEM 分区1.2. 一键恢复 References 1. 联想拯救系统 1.1. OEM 分区 计算机 -> 管理 -> 存储 -> 磁盘管理 1.2. 一键恢复 重新启动电脑 F11 -> 从初始备份恢复 References [1] Yongqiang Cheng, https…

2024年国产最好的家用投影仪!当贝极米坚果稳居口碑销量前三

国产投影仪在2024年已经极为成熟&#xff0c;也具有极为丰富的挑选余地。但如何选择合适的品牌和型号&#xff0c;一直是很多人的困惑。不过国产家用投影仪哪个最好&#xff0c;性价比最高都其实非常容易分辨。这次也来盘点下2024年最新排行榜&#xff0c;给大家无需复杂攻略即…

蓝桥杯day7刷题日记

P8697 [蓝桥杯 2019 国 C] 最长子序列 思路&#xff1a;直接遍历&#xff0c;和子序列相同就记录&#xff0c;不然就下一位 #include <iostream> #include <string> using namespace std; int res;int main() {string s,t;cin>>s>>t;int i0,j0;while…

Linux中的常用基础操作

ls 列出当前目录下的子目录和文件 ls -a 列出当前目录下的所有内容&#xff08;包括以.开头的隐藏文件&#xff09; ls [目录名] 列出指定目录下的子目录和文件 ls -l 或 ll 以列表的形式列出当前目录下子目录和文件的详细信息 pwd 显示当前所在目录的路径 ctrll 清屏 cd…

报表控件Stimulsoft Reports、Dashboards 和 Forms 新版v2024.2发布!

我们很高兴地宣布发布用于创建报告、仪表板和表单的最新版本的 Stimulsoft 产品 - 2024.2&#xff01;在此更新中&#xff0c;您将找到适用于 Python 应用程序和服务的产品、新的仪表板元素、我们的组件与 .NET 8.0 的兼容性、仪表板交互性的增强功能等等。 Stimulsoft Ultima…