Jestem nowy w selenie. Próbowałem zapisać tekst z Xpath przy użyciu storeText, a celem jest // * [@ id = "mathq2"]. podstawowy adres URL to http://timesofindia.indiatimes.com/.
Otrzymuję ten błąd
[info] Executing: |storeText | //*[@id="mathq2"] | wwww |
[error] Invalid xpath [2]: //*[@id="mathq2"]
Proszę pomóż mi.
Odpowiedzi:
1 dla odpowiedzi № 1Cześć Danny dostał ten sam błąd w witrynie timesof w Indiach. Oto co zrobiłem.
Nagrałem element (wpisując coś w polu tekstowym obok niego), a następnie kliknąłem wartość jak 8+0 =
a następnie wybrałem przycisk opcji powyżej. Tak pokazał mój selen
click id=mathq2
stamtąd wybrałem xpath w rozwijanym menu Cel i xPath wydawał się pokazywać
//span[@id="mathq2"]
więc w końcu zastąpiłem mój krok dla storeText as
storeText //span[@id="mathq2"]
dodanie
a następnie zapisał tę wartość 8 + 0 = w zmiennej „add”.
0 dla odpowiedzi nr 2
Otrzymujesz ten błąd, ponieważ nie ma elementu z taką ścieżką xPath na stronie głównej http://timesofindia.indiatimes.com/. Jak myślisz, dlaczego tam jest?
Za pomocą narzędzia xPath Checker (wtyczki Firefox) można sprawdzić, czy xPath jest prawidłowy i czy element istnieje.
0 dla odpowiedzi № 3
tak, jest tam identyfikator, ale tekst zmienia się dynamicznie.
0 dla odpowiedzi nr 4
Musisz dodać przedrostek xpath = do celu i wygląda na to, że xpath jest również poprzedzony kropką:
|storeText | xpath=.//*[@id="mathq2"] | wwww |
Musisz także upewnić się, że skrypt czeka na rozładowanie początkowej strony reklamowej.