第1个回答 2023-04-29
你可以尝试使用`get_attribute`方法来获取元素的值,如下所示:
```python
element = driver.find_element(By.XPATH, '//*[@id="if_addr5"]')
value = element.get_attribute('value')
print(value)
```
如果元素的值不是输入框中的值,而是通过JavaScript生成的,则上面的方法可能无法获取到值。你可以尝试使用`execute_script`方法来执行JavaScript脚本,如下所示:
```python
element = driver.find_element(By.XPATH, '//*[@id="if_addr5"]')
value = driver.execute_script('return arguments[0].value', element)
print(value)
```
另外,如果元素的值在页面加载完成后是通过Ajax异步加载的,那么你需要等待异步加载完成后再获取元素的值。你可以使用`WebDriverWait`和`expected_conditions`类来实现等待,如下所示:
```python
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
element = WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, '//*[@id="if_addr5"]')))
value = element.get_attribute('value')
print(value)
```