텍스트 필드의 값을 인쇄하려고합니다. 값이 출력되지 않습니다. 빈 출력을 얻고 있습니다. 비어 있습니다. 텍스트 필드에는 웹 페이지에 값이 있습니다. name_element.get_attribute ('value')를 사용하고 있습니다. 텍스트 필드의 값을 출력해야합니다. 왜 그것이 나를 위해 일하지 않는지 모르겠다.Selenium Python은 get_attribute ('value')를 사용하여 텍스트 필드의 값을 인쇄하고 값을 인쇄하지 않습니다. 공백이 인쇄됩니다.
는 PyCharm에서 콘솔 출력은 다음과 같습니다 다음 라인의 값이 인쇄 name_element.get_attribute에게 ('값')
내가 값을 "데이터 오브젝트 이름을"기대하고을 인쇄되지
print_value_from_name_textfield 이 값은 웹 페이지의 텍스트 필드에있는 값이므로 인쇄하십시오. 나는 빈 출력을 얻고있다.
내 코드는 다음과 같습니다
def print_value_from_name_textfield(self):
name_element = self.get_element(*MainPageLocators.data_objects_Name_textfield_edit)
print "print_value_from_name_textfield"
print name_element.get_attribute('value')
HTML은 : 텍스트 필드의 ID가 같이 정의된다 MainPageLocators에서
<div class="marginbelow">
<span class="gwt-InlineLabel defaultFormLabelWidthCompact myinlineblock">Name</span>
<input id="data_configuration_edit_data_object_tb_name" class="gwt-TextBox" type="text"/>
</div>
:
from selenium.webdriver.common.by import By
class MainPageLocators(object):
data_objects_Name_textfield_edit = (By.ID, 'data_configuration_edit_data_object_tb_name')
get_element 구현은 다음과 같습니다
# returns the element if found
def get_element(self, how, what):
# params how: By locator type
# params what: locator value
try:
element = self.driver.find_element(by=how, value=what)
except NoSuchElementException, e:
print what
print "Element not found "
print e
screenshot_name = how + what + get_datetime_now() # create screenshot name of the name of the element + locator + todays date time. This way the screenshot name will be unique and be able to save
self.save_screenshot(screenshot_name)
raise
return element
내가 뭘 잘못하고있어? 감사합니다, 리아 즈
입력 요소에 속성 값이 표시되지 않습니다. 이것이 공백으로 돌아 오는 이유입니다. – lauda
get_attribute ('value')는 실제 값이 저장되는 속성을 캡처합니다. 텍스트는 innertext를 캡쳐합니다 –
몇 달 전에 텍스트 필드에서 인쇄 된 값을 얻는 방법에 대한 질문을했습니다. 해당 HTML 스 니펫에는 입력 요소에 특성 값이 없습니다. 값은 get_attribute ('value')를 사용하여 인쇄됩니다. 내 다른 질문 링크는 다음과 같습니다. http://stackoverflow.com/questions/31609234/python-selenium-print-out-value-of-textfield-is-showing-empty-the-value-is-not –