В рамках нашего веб-приложения Клиент должен подписать контракт в docusign, а затем сформирован первоначальный контракт.DocuSign - Selenium Python - «Sign» «Начальный» элемент
В документе, в некоторых местах требуется инициал клиента, а в некоторых местах требуется подпись клиента (это не в порядке). Я смог сделать следующее. Но я получаю сообщение «Элемент не видно». Думаю, клик переместится на «Sign here», когда есть «Initial here». Для каждого выбранного контракта это меняется. Как написать свой код, чтобы это учесть? Пожалуйста, дайте мне знать.
try:
self.driver.find_element_by_id("chkUserEsign").click()
time.sleep(5)
self.driver.find_element_by_id("ds_hldrBdy_dlgStart_startReview_btnInline").click()
except NoSuchElementException as e:
print('retry in 10s.')
time.sleep(1)
try:
self.driver.find_element_by_id("ds_hldrBdy_navnexttext_btnInline").click()
except NoSuchElementException as e:
print('retry in 9s.')
time.sleep(1)
try:
listofinitial = self.driver.find_elements_by_xpath("//input[@type='image' and @title='Initial Here']")
for i in listofinitial:
i.click()
self.driver.find_element_by_id("ds_hldrBdy_dlgAdoptSig_btnAdoptSignature_btnInline").click()
listofsign = self.driver.find_elements_by_xpath("//input[@type='image' and @title='Sign Here']")
for j in listofsign:
j.click()
except NoSuchElementException as e:
print('retry in 5s.')
time.sleep(1)
Thanks Rishi.I решил использовать этот код. listofinitial = self.driver.find_elements_by_xpath ("// input [@ type = 'image" и @ title =' Initial Here '] ") print (listofinitial) print (listofinitial [0]) time.sleep (3) . listofinitial [0] .click() self.driver.find_element_by_id ("ds_hldrBdy_dlgAdoptSig_btnAdoptSignature_btnInline") нажмите() time.sleep (3) для я в listofinitial [1]: i.click() listofsign = само .driver.find_elements_by_xpath ("// input [@ type = 'image" и @ title =' Sign Here '] ") для j в listofsign: j.click() – user2744620