首页 > 其他分享 >selenium 账号密码登录一个网站 需要加上等待元素出现的条件EC 很重要

selenium 账号密码登录一个网站 需要加上等待元素出现的条件EC 很重要

时间:2023-09-26 17:59:30浏览次数:36  
标签:__ name selenium self driver EC login psw 账号密码

# 导入包


from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from time import sleep
# 登录商城
class login_shop():
    def __init__(self,driver):
        self.driver=driver
        self.input_name=(By.ID,"username")
        self.input_psw=(By.ID,"password")
        self.login_button=(By.ID,"btnLogin")


    def login(self,name,psw):
        WebDriverWait(self.driver, 10).until(EC.visibility_of_element_located(self.input_name)).send_keys(name)
        WebDriverWait(self.driver, 10).until(EC.visibility_of_element_located(self.input_psw)).send_keys(psw)
        WebDriverWait(self.driver, 10).until(EC.visibility_of_element_located(self.login_button)).click()
        # self.driver.find_element(self.input_name).send_keys(name)
        # self.driver.find_element(self.input_psw).send_keys(psw)
        # self.driver.find_element(self.login_button).click()
    # 退出
    def quit(self):
        self.quit()
# 实例化调用登录商城类
if __name__ == '__main__':
    # 实例化webdirver
    driver = webdriver.Chrome()
    # 打开浏览器
    driver.get("http://XXX:38090/#/login")

    # 将driver传给类,实例化一个对象l
    l=login_shop(driver)
    # l 调用方法
    l.login(name='朝天宫383',psw='123456')
    sleep(2)
    l.quit()

 

标签:__,name,selenium,self,driver,EC,login,psw,账号密码
From: https://www.cnblogs.com/haha1988/p/17730806.html

相关文章

  • 你眼中的程序员 vs 程序员眼中的自己,是时候打破刻板印象了丨KubeCon 主题活动
    有人说,程序员工作赚钱真简单,电脑上按按键盘就行了,一点也不辛苦。有人说,程序员不懂生活,就知道天天对着电脑。“在长辈眼里,程序员是坐办公室的神秘职业、高级白领;在朋友邻居眼里,程序员是修电脑高手;在异性眼里,程序员是不修边幅的宅男,但是程序员的梦想大部分都是改变世界。”如果我......
  • PG 故障分析之 select count(*) 产生大量WAL 日志(wal_log_hint)
    Hello,大家好,今天给大家分享的这个本周发生在生产环境的一个真实的案例。故障的现象是:主库短时间内生成了大量的WAL日志,触发了归档archive_command的操作,导致灾备中心的2台standby机器同步中断。StandbyLog:FATAL:couldnotreceivedatafromWALstream:ERROR:reques......
  • Technocup 2022 - Elimination Round 2 Two Arrays
    给定两个数组\(a_1,a_2,\cdots,a_n\)和\(b_1,b_2,\cdots,b_n\)。定义\(a\)的一次操作:选择任意一个非负整数\(k(0\leqk\leqn)\)。选择任意\(k\)个独立的下标\(i_1\leqi_2\leq\cdots\leqi_k\leqn\)。对\(a_{i_1},a_{i_2},\cdots,a_{i_k}\)......
  • Technocup 2022 - Elimination Round 3 B. Array Eversion
    给一个长度为\(n\)的数组。执行一次以下操作:让\(x=a_n\),然后数组\(a\)被分为左右两部分。左部分包含所有\(\leqx\)的元素,右部分包含所有\(>x\)的元素。且数组整体的原顺序不变。询问经过多少次操作后,数组不再改变?\(1\leqn\leq2\cdot10^5,1\leqa_i\le......
  • selenium自动化测试+OCR-获取图片页面小说
    随着爬虫技术的发展,反爬虫技术也越来越高。目前有些网站通过自定义字体库的方式实现反爬,主要表现在页面数据显示正常,但是页面获取到的实际数据是别的字符或者是一个编码。这种反爬需要解析网站自己的字体库,对加密字符使用字体库对应字符替换。需要制作字体和基本字体间映射关系。......
  • 基于Java的大学生汉服租赁网站的设计与实现(亮点:在线支付、ECharts图表展示、完整下单
    大学生汉服租赁网站一、前言二、我的优势2.1自己的网站2.2自己的小程序(小蔡coding)2.3有保障的售后2.4福利三、开发环境与技术3.1MySQL数据库3.2Vue前端技术3.3SpringBoot框架3.4微信小程序四、功能设计4.1主要功能描述五、系统实现5.1前端实现5.1.1汉服租赁5.1.2汉服......
  • 在线直播系统源码,取CTreeCtrl控件选中节点的文字
    在线直播系统源码,取CTreeCtrl控件选中节点的文字 voidCAboutDlg::OnSelchangedTree1(NMHDR*pNMHDR,LRESULT*pResult) {NM_TREEVIEW*pNMTreeView=(NM_TREEVIEW*)pNMHDR;//TODO:Addyourcontrolnotificationhandlercodehere    MessageBox(m_tree1.GetIte......
  • selenium的xpath
    <labelfor="fname">Firstname:</label><br><inputclass="information"type="text"id="fname"name="fname"value="Jane"><br><br>对应的xpath //inpu......
  • useEffect使用指南
    https://zhuanlan.zhihu.com/p/65773322最基本的使用importReact,{useState}from'react';functionApp(){const[data,setData]=useState({hits:[]});return(<ul>{data.hits.map(item=>(<likey={item.objectI......
  • P5838 [USACO19DEC] Milk Visits G
    P5838[USACO19DEC]MilkVisitsGLuoguP5838Solution提供一种奇特的\(\mathcalO(\dfrac{n\sqrtn\logn}{\omega})\)的做法。树链剖分转化成序列问题。然后变成了询问一个区间\(l,r\)是否存在一个颜色\(k\),显然可以\(\mathcalO(n)\)预处理\(\mathcalO(\sqrtn)\)......