#python #html #selenium #selenium-webdriver
Вопрос:
Я новичок в selenium и хотел бы знать, как я могу идентифицировать информацию о столбцах таблицы, в данном случае это будут поля «Em aberto», чтобы иметь возможность загружать файлы с помощью selenium.
Мой код :
from selenium import webdriver
from time import sleep
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
navegador = webdriver.Chrome()
link = "https://app.gdjeokdk.com/login"
navegador.get(link)
user = "******"
password = "******"
sleep(1)
campo_user = navegador.find_element_by_id('login-input-usuario-id').send_keys(user)
campo_password = navegador.find_element_by_name('senha').send_keys(password)
button_enter = navegador.find_element_by_id('login-button-id').click()
sleep(5)
button_consultas = navegador.find_element_by_id("menu-consultas").click()
sleep(3)
iframe = navegador.find_element_by_id("iframeRf")
navegador.switch_to.frame(iframe)
sleep(2)
fatura = navegador.find_element_by_id("consultaspnl.row.8").click()
sleep(2)
#arquivo = navegador.find_element_by_id("g.image.visualizar").click()
table_id = navegador.find_element_by_id('faturaspnl.orderedflextablemo.tabela')
print(table_id)
sleep(1)
rows = table_id.find_elements_by_tag_name("tr")
#print(rows)
for row in rows:
col = row.find_elements(By.TAG_NAME, "td")
print(col)
# for linhas in col:
# if "Em aberto" in linhas[2].find_element_by_class_name("gwt-HTML"):
# div = linhas.find_elements(By.TAG_NAME, "div")
# print(div)
я сфотографирую стол, если понадобится:
Стол
HTML, если нужно: HTML-код
и как мне вставить кнопку «Визуализатор» после определения строк, содержащих информацию «Em Aberto»?
Html код 2 codigo HTML 2
Ответ №1:
Вы могли бы попробовать что-то вроде:
items = navegador.find_element_by_xpath("//td[@class='dataBaseTD nomeTD']/div[text()="Em aberto"]")
Взгляните на https://selenium-python.readthedocs.io/locating-elements.html