Поиск элемента на веб-сайте и вставка значения не работают ⇐ Python

Программы на Python
Anonymous
Поиск элемента на веб-сайте и вставка значения не работают

Сообщение Anonymous »

В настоящее время я пытаюсь настроить сценарий, который копирует значение из Excel и вставляет его в определенное поле на веб-сайте. Однако в настоящее время я не могу сделать это на корпоративном веб-сайте, в другом скрипте на www.google.com это сработало.
Ниже вы видите код, который я использовал для вставки значения. 'x' в строку поиска Google, что тоже сработало

Код: Выделить всё

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
import time
from selenium.webdriver.chrome.service import Service

search_value = 'x'

chromedriver_path = r"C:\Users\QXZ5FRL\PycharmProjects\TestTest\venv\Scripts\chromedriver.exe"
service = Service(executable_path=chromedriver_path)
driver = webdriver.Chrome(service=service)
driver.get('https://www.google.com')
time.sleep(2)

try:
cookie_accept_button = driver.find_element(By.XPATH, '//*[@id="L2AGLb"]/div')
cookie_accept_button.click()
except Exception as e:
print("Cookie-Zustimmungsbutton nicht gefunden:", e)

search_box = driver.find_element(By.NAME, 'q')
search_box.clear()
search_box.send_keys(search_value)
search_box.send_keys(Keys.RETURN)

time.sleep(5)

driver.quit()
Теперь вы видите код моего проекта, который, к сожалению, не работает.

Код: Выделить всё

import pandas as pd
import time
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys

chromedriver_path = r"C:\Users\QXZ5FRL\PycharmProjects\TestTest\venv\Scripts\chromedriver.exe"

service = Service(executable_path=chromedriver_path)

driver = webdriver.Chrome(service=service)

try:
driver.get("https://.net/hlrn/login.do") #corporate website thus not complete
driver.maximize_window()
driver.implicitly_wait(4)

button = driver.find_element(By.ID, "idToken4_1") # Field to click for login
button.click()

driver.get("https://.net/hlrn/rechercherechnung.do") #corporate website thus not complete
driver.implicitly_wait(4)

excel_file = r'C:\Users\QXZ5FRL\Desktop\SOKU Nummer mit Mail.xlsx'
df = pd.read_excel(excel_file)

df['ID_Client'] = df['ID_Client'].dropna()
eindeutige_werte = df['ID_Client'].unique()

for wert in eindeutige_werte:
if pd.isna(wert):
continue

wert = str(int(wert))
print(f"Einzufügender Wert: {wert}")

try:
input_field = driver.find_element(By.NAME, "kundenNummer")
input_field.clear()
input_field.send_keys(wert)
input_field.send_keys(Keys.RETURN)

time.sleep(1)

except Exception as e:
print(f"Fehler beim Einfügen des Werts '{wert}': {e}")

finally:
# Schließe den Browser
driver.quit()
После этого утверждения: «try: input_field = driver.find_element(By.NAME, «kundenNummer»)»
код больше не выполняется

Код: Выделить всё

Einzufügender Wert: 53611
Fehler beim Einfügen des Werts '53611': Message: no such element: Unable to locate element: {"method":"css selector","selector":"[name="kundenNummer"]"}
(Session info: chrome=129.0.6668.101); For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception
Stacktrace:
GetHandleVerifier [0x00007FF6A116B095+29557]
(No symbol) [0x00007FF6A10DFA50]
(No symbol) [0x00007FF6A0F9B56A]
(No symbol) [0x00007FF6A0FEF695]
(No symbol) [0x00007FF6A0FEF8EC]
(No symbol) [0x00007FF6A103B777]
(No symbol) [0x00007FF6A10171CF]
(No symbol) [0x00007FF6A103851C]
(No symbol) [0x00007FF6A1016F33]
(No symbol) [0x00007FF6A0FE116F]
(No symbol) [0x00007FF6A0FE22D1]
GetHandleVerifier [0x00007FF6A149C96D+3378253]
GetHandleVerifier [0x00007FF6A14E8497+3688311]
GetHandleVerifier [0x00007FF6A14DD1CB+3642539]
GetHandleVerifier [0x00007FF6A122A6B6+813462]
(No symbol) [0x00007FF6A10EAB5F]
(No symbol) [0x00007FF6A10E6B74]
(No symbol) [0x00007FF6A10E6D10]
(No symbol) [0x00007FF6A10D5C1F]
BaseThreadInitThunk [0x00007FFA13367374+20]
RtlUserThreadStart [0x00007FFA14CFCC91+33]
Здесь вы также найдете элемент поля, в которое я пытаюсь вставить значение Excel: введите здесь описание изображения


Подробнее здесь: https://stackoverflow.com/questions/790 ... s-not-work

Вернуться в «Python»