ListBox
(kein Tropfen downlist) wie folgt:Python Selen wählen nur ein Element in einer Listbox
<select name="lstym" onChange="SubmitForm(this.form,'ym')" multiple size="5">
<option value="All" selected>All</option>
<option value="201601">201601</option>
<option value="201602">201602</option>
<option value="201603">201603</option>
<option value="201604">201604</option>
<option value="201605">201605</option>
</select>
Scrapy Code:
select = Select(driver.find_element_by_name('lstym'))
for option in select.options:
#select.deselect_all()
#select.deselect_by_index(0)
option.click()
Der erste Punkt defaultly auch immer ausgewählt wird. Möchte aber nur einmal einen Gegenstand auswählen. und select.deselect_by_index(0)
funktionieren nicht.
Solution (nicht gut) Ich fand:
browser.find_element_by_xpath('//select[@name="lstym"]').click()
browser.find_element_by_xpath('//option[@value="201601"]').click()
Mindestens der Standard ausgewähltes Element All
entfernt wurde. Aber der dritte Punkt ist immer ausgewählt. Das ist in Ordnung für mich.
Tritt dieses Verhalten auch auf, wenn Sie manuell auswählen? –
Nein. Es ist in scrapy-Code wie das. Kein Problem, wenn Sie manuell auswählen. – Claiel
Also nur um zu überprüfen, wenn Sie andere Optionen wählen, bleibt ALLE ausgewählt? –