Попробуйте собрать информацию с XPath - PullRequest
0 голосов
/ 07 ноября 2011

Прежде всего, спасибо за ваше время.

Я хочу получить информацию из некоторых сетей, и у меня возникают проблемы с такими выражениями.

           <a class="xxxxx">
           <br>
            Hi
           <br>
           <span class="hpn">City</span>
           : Barcelona
           <br>
           <span class="hpn">color</span>
           : Blue
           <br>
           <span class="hpn">Price</span>
           : 50
           <br>

Я хочу выбрать информацию о цвете города и цене с результатами Barcelona, ​​Blue, 50

Я жду ваших ответов!

Ответы [ 2 ]

2 голосов
/ 07 ноября 2011

В случае отсутствия какой-либо другой информации, включая ваши знания Xpath, я бы направил вас к учебнику Xpath .

0 голосов
/ 12 ноября 2011

Поскольку текст выше - это HTML, а не XML (хотя вы пометили его как XML), я не думаю, что вы сможете заставить его работать как есть.Вышеизложенное извлечение нельзя интерпретировать как правильно сформированный XML, если только вы не добавите закрывающие теги для тега <a> (предположим, вы просто забыли скопировать это), но также все теги <br> должны быть самозакрывающимися <br/> чтобы разобрать это.Поскольку я не знаю, на каком языке вы собираетесь попробовать это (не указано), возможно, ваш парсер будет работать нормально, но все же я боюсь за результат запроса XPath.Но при условии, что это сработает, запрос типа

//a[@class='xxxxx']/span[text()='City']/following-sibling::text()[1]

вернет ': Barcelona' (вы можете подстрокой его удалить часть ':')

или

//a[@class='xxxxx']/span/following-sibling::text()[1]

вернет первых братьев и сестер после каждого класса span

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...