У меня есть некоторые проблемы с очисткой второго элемента

#python #selenium #xpath

#python #selenium #xpath

Вопрос:

Я, кстати, не программист, но в свободное время я стараюсь немного повеселиться. В настоящее время я пытаюсь очистить некоторые данные с веб-сайта и добился наполовину успеха.

Я хочу очистить два данных из изображения в описании, отмеченного красными буквами 1 и 2. Мое единственное требование заключается в том, что xpath должен содержать текст «PinnacleSport», чтобы не путать его со многими другими.

Вот код, который работает для моих первых данных:

  pinnacle_opening_home = driver.find_element_by_xpath ("//th[b[contains(text (), 'PinnacleSports')]]/following-sibling::td[2]").text
  

Мне не очень понятно, как сделать что-то подобное для других данных, поэтому xpath содержит текст «PinnacleSport».

Мне совершенно ясно, что я могу использовать следующее:

 driver.find_element_by_xpath ("//html/body/div/div[1]/div[4]/div/div[4]/table /tbody/tr[21]/td[2]").text
  

… но страницы изменчивы, и это может привести к ошибке для меня в некоторых ситуациях.

Может кто-нибудь дать мне несколько инструкций о том, что попробовать?

введите описание изображения здесь

Ответ №1:

Попробуйте это или какой-либо вариант и посмотрите, работает ли это:

 //tr[th[b[contains(text (), 'PinnacleSports')]]]/following-sibling::tr//td[2]