大家都知道,input框中的值,通過取text是取不到的,那么怎么辦呢?
這里分享三個方法。
import time from selenium import webdriver driver = webdriver.Chrome() try: driver.get('https://www.baidu.com') # 首先send 一些值 driver.find_element_by_id('kw').send_keys('我不管我最帥!') # 法1 通過attr獲取value值,這里有需要說明,該方法必須保證input框有value屬性才能用 time.sleep(1) result1 = driver.execute_script('return $("#kw").attr("name");') # 但這種方式獲取別的就很正常 print(result1) # 法2 通過 val獲取 time.sleep(1) result2 = driver.execute_script('return $("#kw").val();') print(result2) # 法3 通過selenium的 get_attribute 獲取 time.sleep(1) result3 = driver.find_element_by_id('kw').get_attribute('value') print(result3) driver.execute_script('alert("{}")'.format(result3)) finally: time.sleep(10) driver.quit()
需要說明的是,如果通過執行is腳本,那么可使用js的原生方法也可以使用jQuery的方法,視情況而定。
