Я знаю, что есть похожие вопросы. Я прочитал многие (если не все) из них и все еще потерян.
Я пишу скрипт для автоматизации извлечения / ввода некоторых данных, и мне нужно перебрать неизвестное количество записей в таблице на страница в Интернете. Я создал образец, который вы можете увидеть здесь:
Пока мой скрипт входит в эту систему ERP, переходит на страницу на скриншоте, а затем ждет загрузки StandardGrid
с этим:
WebDriverWait(driver, 20).until(EC.presence_of_element_located((By.XPATH, "//table[@class='StandardGrid']")))
StandardGrid
- это место, где размещены ссылки на веб-странице, которую я хочу перебрать. Здесь я заблудился.
Я пробовал несколько разных find_elements_by_XYZ
, но не могу понять, как заставить его работать. Я попытался использовать ChroPath
с Inspect
в браузере, чтобы определить все возможные способы заставить это работать.
Лучшее, что я мог придумать, в этом случае - главная таблица содержит данные, которые я хочу перебрать, имеет XPath
из "//table[@class='StandardGrid']"
Поэтому я попытался сделать следующее:
my_list = driver.find_elements_by_xpath("//a[@class='StandardGrid']")
for item in my_list:
print(item)
Но ничего не печатается.
Заголовок таблицы столбца, который я хочу перебрать и щелкнуть по всем ссылкам, имеет тег <th xpath="1">Operation</th>
На этом снимке экрана первый URL-адрес имеет тег
'<a href="../Modules/Engineering/ProcessRoutings/PartOperationForm.aspx?Do=Update&Part_Operation_Key=8355805&Part_Key=2920988&Part_No=WP112789+Rev%2E%2D&Revision=-&Image=&Operation=Polish" onmouseover="status='Go To Detail Form'; return true;" onmouseout="status='';" style="" xpath="1">
Polish
</a>'
С данными, которые я использую, существуют сотни возможных ссылок, подобных приведенной выше, поэтому необходимо правильное динамическое c решение.
Любая помощь очень ценится, я полностью застрял. Спасибо!