Aktywne Wpisy
ZdzislawRotterdam +162
Pamiętajcie ze jak widzimy taki widok to dzwonimy na policję, a jak krzywo jedzie to mówimy ze prawdopodobnie jest pijany i odrazu są na sygnale ( ͡° ͜ʖ ͡°)
źródło: 1000059239
Pobierz
fernir88 +28
To my mężczyżni budujemy ten świat. #p0lka to tylko na stanowisko managerskie by chciała XD A gdyby nie faceci to prawda jest taka, że by sobie palcem do d--y nie trafiły. Ile kobiet buduje domy? Ile wywozi śmieci? I tak dalej...





Jak liczę jakieś elementy o określonej klasie to korzystam z takiego rozwiązania:
http://pastebin.com/CzMXATXi
Jak nie znajdzie określonego obiektu to wyrzuca błąd, jest break i zwraca licznik.
Teraz chciałem na podobnej zasadzie zrobić coś w tym stylu:
http://pastebin.com/FS7gx23g
Chodzi o to, że kreator ma trzy kroki i chciałem zrobić jedną funkcję klikającą 'Dalej'. Jeśli nie znajdzie odnośnika kończacego się na step1 to przechodzi do wyjątku i próbuje kliknąć na step2. Jeśli i jego nie znajdzie to w drugiej klauzuli except ma kliknąć na step3. I nie działa. Dla 'step1' poprawnie klika 'Dalej', ale gdy jest w oknie, gdzie jest link 'step2' nie zgłasza błędu, ale czeka na ten odnośnik.
Skracając pytanie. Dlaczego:
set.append(driver.findelementsbyid('przykladoweID')[i])
zwraca błąd gdy chcę dodać trzeci element o tym ID, na stronie są dwa, natomiast nie wraca błędu gdy chcę dodać pierwszy element, a na stronie nie ma żadnego (tylko czeka aż się taki pojawi)?
Ja już sobie tę kwestię rozwiązałem na około, ale mógłby ktoś wyjaśnić dlaczego Selenium/Python zachowują się inaczej w pozornie identycznych sytuacjach?
#python #selenium
@Skarfejs: Jak już pisałem - ja sobie to rozwiązanie napisałem inaczej i uzależniłem link od obecności innego obiektu na stronie. Bardziej mnie zaciekawiła ta kwestia niz szukanie alternatywnego rozwiązania, a z implicitly wait nie lubię się bawić szczególnie.
setto jest już funkcja w pythonie, także nazywanie tak zmiennej ją przysłania. Jesteś pewien, że chcesz robić fora do 1000, a nie po prostu przeiterować po wszystkich znalezionych elementach z określoną klasą css?
Tym bardziej że ten pierwszy kod robi mniej więcej
Btw: przecież ten for i tak by sie nie wykonywał tysiąc razy ale do pierwszego błędu ;-)
@venomik: no oczywiste, ale właśnie tym bardziej dlatego się tak nie robi
A co do szukania po id, to czemu masz indeks na końcu