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

Фотография

беда с Xpath и java


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

#1 degradator

degradator

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

  • Members
  • Pip
  • 59 сообщений
  • ФИО:смиромсерг

Отправлено 05 апреля 2012 - 19:39

Здравствуйте, не могу никак разобраться с Xpath.

Вот например есть таблица 2 столбца на 3 строки, в первом столбце надписи "доски", "гвозди" и "болты" в другом столбце их количество"1" "2" "3".

<tr>
<td class="res"> доски </td>
<td class="num"> 1 </td>
</tr>
<tr>
<td class="res"> гвозди </td>
<td class="num"> 2 </td>
</tr>
<tr>
<td class="res"> болты </td>
<td class="num"> 3 </td>
</tr>

Как мне построить Xpath запрос на java, чтобы вытащить значение class="num" из второй строки? Что-то такое должно быть гвоздиКоличество = driver.findElement(By.xpath("//td[4]")).getText(); но я не понимаю как их отметить вторыми
  • 0
Мой сайт - Травиан бот :)

#2 degradator

degradator

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

  • Members
  • Pip
  • 59 сообщений
  • ФИО:смиромсерг

Отправлено 05 апреля 2012 - 19:43

п
  • 0
Мой сайт - Травиан бот :)

#3 neman

neman

    Активный участник

  • Members
  • PipPip
  • 142 сообщений
  • ФИО:Антон


Отправлено 05 апреля 2012 - 20:37

Количество гвоздей = driver.findElement(By.xpath("//tr[2]/td[@class = 'num']")).getText();
Ну или банально //tr[2]/td[2].
  • 0

#4 degradator

degradator

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

  • Members
  • Pip
  • 59 сообщений
  • ФИО:смиромсерг

Отправлено 05 апреля 2012 - 21:08

о спасибо, все просто оказалось, я думал их как-то индексировать надо
  • 0
Мой сайт - Травиан бот :)

#5 soleksenko2702

soleksenko2702

    Постоянный участник

  • Members
  • PipPipPip
  • 193 сообщений
  • ФИО:Олексенко Сергей

Отправлено 06 апреля 2012 - 08:03

Я бы сделал вот такой XPath:
(//tr/td[text()=' гвозди '])/following::td[1]

Что в дальнейшем позволит находить количество для любого товара.
  • 0

#6 degradator

degradator

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

  • Members
  • Pip
  • 59 сообщений
  • ФИО:смиромсерг

Отправлено 10 апреля 2012 - 05:33

о спасибо про текст() я ничего раньше не знал, это решает некоторые другие проблемы
  • 0
Мой сайт - Травиан бот :)


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

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