Ich arbeite mit Selen, um automatisch einige <input>
s auf meiner Website auszufüllen. Ich habe mehrere Eingänge, die identisch sind, jeweils mit einem Eingabefeld und einer Sendetaste. Ich möchte in jedem Eingabefeld eine Zeichenfolge eingeben und senden (die Site wird nicht neu geladen).Nächste/nächste Taste finden Selenium
input = driver.find_elements_by_class_name('cdRecord')
for in in inputs:
in.click()
nr = str(randint(0, 1000))
in.send_keys("..."+nr)
NEXT_BUTTON_XPATH = '//button[@type="submit" and @title="next"]' #this does not work
driver.find_element_by_xpath(NEXT_BUTTON_XPATH).click()
Ich hole das alle input
zuerst und dann über sie iterieren. Das Problem ist, dass er jede Eingabe ausfüllt, aber immer auf die gleiche Schaltfläche klickt.
Also meine Frage ist, wie finde ich die nächste Schaltfläche?
fand ich this aber wenn ich die xpath
und following-sibling
verwenden möchten ich möchte auch einige id
und ändern Sie den Pfad in jeder Iteration holen müssen:
x = fetch id from the input field?
driver.find_element_by_xpath("//input[@id, "x"]/following-sibling::button")
Gibt es eine einfache Lösung zu finden, die nächstgelegenes Element zum ausgewählten Element?
Wenn diese 'INPUT's in einer Form sind, alles, was Sie tun müssen, ist, zu tun' in .submit() 'für jedes Element im Formular. – JeffC
@JeffC nein der Ajax wird nur ausgelöst, wenn ich klicke, würde die Seite laden würde ... – hansTheFranz