@piko

Как распарсить эту таблицу с помощью XPath?

UPDATE: решение в комментарии.

Требуется следующее: если один из <td> в каком-либо <tr> содержит слово "Рубли", то требуется вернуть этот <tr> и все последующие, которые объединены с помощью rowspan. Т.е. в данном случае нужно вернуть 3 строки.
Пробовал так:
tr[//td[contains(text(), "Рубли")]]/following-sibling::*

но не сработало.

<table class="rates"> 
  <tbody>
    <tr>
      <th colspan="7">Процентная ставка</th> 
    </tr>  
    <tr>
      <th>Первоначальный взнос</th>
      <th>от 30 до 89 дней</th>
      <th>от 90 до 179 дней</th>
      <th>от 180 до 364 дней</th>
      <th>от 365 до 729 дней</th>
      <th>от 730 до 1115 дней</th>
    </tr>
    <tr>
      <td rowspan="3">Рубли</td>
      <td>от 3 000 до 699 999</td>
      <td>6,50</td>
      <td>7,20</td>
      <td>8,80</td>
      <td>10,30</td>
      <td>10,40</td>
    </tr>
    <tr>
      <td>от 700 000 до 1 499 999</td>
      <td>6,60</td>
      <td>7,30</td>
      <td>8,90</td>
      <td>10,40</td>
      <td>10,50</td>
    </tr>
    <tr>
      <td>от 1 500 000</td>
      <td>6,70</td>
      <td>7,40</td>
      <td>9,00</td>
      <td>10,50</td>
      <td>10,60</td>
    </tr>
    <tr>
      <td>Доллары США</td>
      <td>от 100</td>
      <td>3,30</td>
      <td>3,75</td>
      <td>4,15</td>
      <td>4,80</td>
      <td>4,95</td>
    </tr>
	<tr>
      <td>Евро</td>
      <td>от 100</td>
      <td>2,80</td>
      <td>3,25</td>
      <td>3,65</td>
      <td>4,30</td>
      <td>4,45</td>
    </tr> 
  </tbody>
</table>
  • Вопрос задан
  • 2555 просмотров
Решения вопроса 1
DevMan
@DevMan
//tr[td[text()="Рубли"]]
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы