Aktywne Wpisy

Oszaty +301
Kochani, to moje pierwsze próby szydełkowania i jestem niesamowicie dumna! Usłyszałam nawet od jednej osoby, że mam wyjątkowy talent, a to dopiero pierwsza zrobiona przeze mnie rzecz :D Dzielę się więc ze światem :D
Dajcie plusika, żebym mogła tworzyć dalej!!
#chwalesie #hobby #szydelkowanie
Dajcie plusika, żebym mogła tworzyć dalej!!
#chwalesie #hobby #szydelkowanie

Panitsch +62
Daily reminder, że władze Ukrainy na chwilę przed wybuchem konfliktu nie traktowały Polski jako sojusznika robiąc nam pod górę. Jeżeli ktoś uważa, że po zakończeniu konfliktu nagle ukraińcy się zmienią to chyba ma coś nie tak z głową. Smacznych wypieków ze zboża technicznego zwożonego do Polski przez ukraińskich gierojów ( ͡° ͜ʖ ͡°) (ALE U NICH JEST WOJNA ONUCO!!!) #takaprawda #ukraina #rosja #wojna
Wklejam linki do artykułów, bo
Wklejam linki do artykułów, bo





Nie mogę przez googla cookies przejść...
https://pastebin.pl/view/d82c7db0
Próbowałem na różne sposoby, chyba jestem jakąś pierdołą :(
selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//form//span[@class='RveJvd snByac']"}
(Session info: chrome=85.0.4183.83)
#selenium
presence_of_element_locatedalbo
visibility_ofModal jest doczytywany, po załadowaniu strony element jeszcze nie istnieje.
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, "//form//span[@class='RveJvd snByac']"))
)
też nie działa. Wait na 20 sekund, też nic. Chyba, że lepiej wziąć się za naukę na mniej popularnych stronach :P
Google źle się nadaje do nauki, bo ma różne mechanizmy przeciwdziałające zabawie w automaty u nich.
Tutaj samo czekanie nie pomoże, bo ten element początkowo w ogóle nie istnieje w DOMie (nie wiem na jakiej zasadzie jest wyświetlany), dopiero jak robię inspect to pojawia się iframe z tym elementem (do iframe też nie dostaniesz się od razu, musisz do niego przejść najpierw).
Chyba, że przyszło mi jeszcze do głowy, wgrać cookies jakoś, bo na zwykłej przeglądarce to jest zapamiętywane i nie wyświetla sie pytanie za każdym razem.
Da się coś takiego zrobić? :)
1. Źle Ci wyżej napisałem. iframe istnieje od początku załadowania strony, wobec czego spokojnie możesz to ogarnąć tutaj. Ten xpath z którego korzystasz do znalezienia elementu działa wewnątrz iframe.
Kliknij prawym na element, wybierz 'inspect' i patrz sobie element po elemencie w górę drzewa DOM dokąd Ciebie to zaprowadzi.
A zaprowadzi Ciebie do elementu typu iframe. Nie możesz z tego, co znajduje się wewnątrz iframe, korzystać od razu - bo
Precyzując, żebyś dobrze zrozumiał.
iframe to jakby strona osadzona w stronie. Część, która ma własną strukturę DOM. W momencie gdy selenium otwiera stronę i ma znaleźć element - to szuka w aktualnej strukturze. Tutaj takiego elementu nie ma, dlatego selenium tego elementu nie znajduje.
Gdy sobie kopiujesz xpath poprzez 'copy xpath' albo 'copy full xpath' w przeglądarce - to oczywiście kopiowana jest ścieżka wewnątrz strony, na której ten element jest.
Wolaj jak bedziesz miał problem.
(nudzi mi się w pracy)