如何使用Selenium webdriver在网站上选择“用户名”字段?

2024-04-26 03:11:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我只想输入用户名和密码。。。在

我试过了:

username=driver.find_element(By.CSS_SELECTOR("UserId"))
username.send_keys("test")

但它给了我一个错误:

^{pr2}$

我只是复制并粘贴了下面表单的源代码。在

<form name="loginform" id="loginform" method='POST' action="login.jsp" AUTOCOMPLETE="off">

<table class="loginmiddletable" cellspacing=8 cellpadding=2>
    <tr>
        <td style="padding-top:20px" class="loginlabel">Network ID&nbsp;
            <INPUT type="text" class="logininput" value='' name="UserId" >
        </td>
    </tr>
    <tr>
        <td class="loginlabel">Password&nbsp;
            <INPUT type=password class="logininput" value='' name="Password" >
        </td>
    </tr>
    <tr>
        <td align="right" class="errormsgstyle">&nbsp;
            <input class=loginbutton type=submit name="btnLogin" value='Sign In' title="Click To Sign In" onclick="window.status='Signing in. Please wait...';">
        </td>
    </tr>
    <tr>
        <td align="left" class="errormsgstyle">&nbsp;
        </td>
    </tr>
</table>
</form>

Tags: nameforminputvaluetypetableusernametr
2条回答

方法find_element需要2个参数:

username=driver.find_element(By.NAME, "UserId")
username.send_keys("test")

您还可以使用find_element_by_name

^{pr2}$

如果要通过css选择器选择,则必须使用正确的css选择器。你会想要这样的东西:

username=driver.find_element_by_css_selector('input[name="UserId"]')

相关问题 更多 >