Jak działają selectory w Selenium?

0

Hej,

mam kod który scrapuje dane z tego linku: link

I teraz developer ustawił takie selectory:

Selector01: //a[2][@href='/?q=business%20analyst@keyword']
Selector02: //a[2][@href='/?q=business%20analyst@keyword']/../../..
Selector03: //a[2][@href='/?q=business%20analyst@keyword']/../../../div[2]/div[1]/div[1]
Selector04: //a[starts-with(@href, '/offers/')]
  1. Czy ktoś mi wyjaśni jak je znaleźć na stronie?
    Wpisuję je w dodatek do chrome SelectorsHub i nic mi nie pokazuje.

  2. co znaczy /../?

Dziękuję za pomoc,
Jacek

2

ad 1)

ad 2) parent ?

0
Adamek Adam napisał(a):

ad 1)

ad 2) parent ?

Znam ten link. Dzięki. Ale to nie zmienia faktu że nie wiem jak to zrobił :)

3

Toż to XPath.
Pod Chrome możesz łatwo taki skopiować z poziomu przeglądarki:
screenshot-20221207090900.png
//*[@id="id1881260"]/div[2]/div[2]/div[2]/div[2]/div/pre/code

Odpowiadając na Twoje pytanie:
//a[2][@href='/?q=business%20analyst@keyword']/../../../div[2]/div[1]/div[1]

// - bieżący node
a[2] - drugie dziecko o nazwie a
[@href='/?q=business%20analyst@keyword'] - atrybut href ma wartość /?q=business%20analyst@keyword
/../../../ - parent parenta parenta znalezionego elementu a[2]
div[2] - drugi element div

Tu masz tekstową instrukcję: link

1 użytkowników online, w tym zalogowanych: 0, gości: 1