Перейти к содержимому

Фотография

Поиск xpath

selenium xpath html

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 sechd

sechd

    Новый участник

  • Members
  • Pip
  • 18 сообщений
  • ФИО:Антон Антонов

Отправлено 05 апреля 2020 - 15:00

Всем привет! Задача следующая - на сайте днс перехожу в список системных блоков, затем беру к примеру третий сверху товар и у него беру характеристики. Так вот, проблема не в этом а в следующем - как мне взять такой универсальный xpath, который не будет меняться и мне не придется постоянно переписывать его? К примеру, допустим на сегодня 3-й по списку будет какой нибудь ASUS , а через неделю 3им в списке станет MSI. Допустим нам нужна характеристика товара "Тип оперативной памяти" у асуса, которая в таблице характеристик будет находится под "Тип материнской платы", а через неделю у нашего MSI характеристика "Тип материнской платы" будет отсутствовать, тем самым порядок поменяется и компилятор мне выдаст сообщение что элемент "Тип оперативной памяти" не найден.

Например у асуса будет такой xpath - /html/body/div[1]/div[2]/div[5]/div[4]/div/div[4]/div[2]/table/tbody/tr[21]/td[2]

а у msi та же самая характеристика будет находится под таким xpath - /html/body/div[1]/div[2]/div[5]/div[4]/div/div[4]/div[2]/table/tbody/tr[20]/td[2]


  • 0

#2 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 05 апреля 2020 - 15:52

//table//span[contains(text(),'Тип оперативной памяти')]/../../../td[2]


  • 0

#3 sechd

sechd

    Новый участник

  • Members
  • Pip
  • 18 сообщений
  • ФИО:Антон Антонов

Отправлено 10 апреля 2020 - 17:22

//table//span[contains(text(),'Тип оперативной памяти')]/../../../td[2]

Благодарю за подсказку! Понял как надо теперь делать...


  • 0



Темы с аналогичным тегами selenium, xpath, html

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных