0

PhantomJS (python 2.7) で Selenium を使用する ページ (Cisco Unity 7 FYI) でテキスト ボックスを見つけ、キーを送信しようとしました。

driver.find_element_by_id("pwdPwdPassword").send_keys("12345678")
driver.save_screenshot('screen.png')

スクリーン ショットを見ると、実際に送信されるキーは 2 つだけです。Unityがパスワードをマスクするものがわからない. IDLE でスクリプトを実行し、ゆっくりと入力すると、

driver.find_element_by_id("pwdPwdPassword").send_keys("1")
driver.find_element_by_id("pwdPwdPassword").send_keys("2")
driver.find_element_by_id("pwdPwdPassword").send_keys("3")
driver.find_element_by_id("pwdPwdPassword").send_keys("4")
....

キーストロークは実際にテキスト ボックスに入ります。スクリプトの各 send_keys の間に time.sleep(2) を入れてみましたが、結果は同じです。このパスワードを入力するためだけにスクリプトに 30 秒を追加する必要がないように、これにトリックがあることを願っています!

ありがとう!!!

4

2 に答える 2

1

オプションとして、jQuery を使用してみてください。

def enter_password(driver, password):
    driver.execute_script("""$("#pwdPwdPassword").val('%s');"""" % password) 
    ## id must be unique per page
于 2013-11-14T21:03:22.713 に答える