Aktywne Wpisy
DonSizar +66
#gielda k----x czekolada gorzka 80g za 10 ziko. P------o ich tam z tym kakaem. Jeszcze rok temu kupowałem ją za 3 50 zł w biedrze.
źródło: temp_file3986625385344817575
Pobierz
mirko_anonim +7
Treść przeznaczona dla osób powyżej 18 roku życia...





I ja dokładnie wiem, że to dlatego, że traci referencję do obiektu page, tylko, że w moim kodzie ten exception nie ma większego znaczenia, bo po 'page.click()' nie ma już żadnych operacji na obiekcie o nazwie page.
I jak wyciszę ten exception tak jak na zdjęciu, to wszystko działa w porządku, tylko mam z tym taki problem, że to nie wygląda na eleganckie rozwiązanie. Da się to zrobić jakoś inaczej?
Myślałem nad czymś w stylu 'odrejestrowania' obiektu, tak żeby webdriver wiedział, że dany obiekt nie będzie używany w przyszłości, ale nie mogę znaleźć nigdzie info, czy tak się da. Nie mam innych pomysłów jak to ładniej ominąć. Ktoś wie jak się powinno obchodzić z taką sytuacją? Bo z selenium mam do czynienia od niedawna.
#programowanie #python #qa #selenium #testowanieoprogramowania
źródło: comment_wHN2ZAnAy02AE8VO9aNoEmW2ovMzMLPQ.jpg
Pobierzbreakzaraz po.click()(jeszcze w ifie).edit: swoją drogą, nie ma jakichś funkcji do wybierania elementu z zadanym tekstem? Wtedy w ogóle nie musiałbyś iterować.
edit2: jest XPath, więc można go wykorzystać :) https://stackoverflow.com/questions/12323403/how-do-i-find-an-element-that-contains-specific-text-in-selenium-webdriver-pyth
Prev, 1, 2, 3, Next
Przez co będąc na stronie pierwszej i chcąc pójść na drugą, to druga strona kryje się równocześnie pod przyciskiem '2' oraz pod
find_elementszwraca listę i nie ma problemu z iterowaniem po jej elementach, nawet jak zostaną odczepione od DOM-u. Dobrze wiedzieć!Bo w moim przypadku to było tak, że po pierwszym użyciu 'page.click()' strona była odświeżana. W tle szła wtedy jedna iteracja przez link, który prowadził do trzeciej podstrony (ale nie był klikany, bo nie spełniał warunku) oraz kolejna iteracja, która napotykała link o nazwie 'Next'. Wtedy kliknięcie na 'Next' było już