Russian Qt Forum
Ноябрь 22, 2024, 11:06 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: XQuery и парсинг html документа  (Прочитано 6762 раз)
nixman05
Гость
« : Сентябрь 03, 2011, 15:19 »

Здравствуйте.

Есть необходимость из html документа вытащить определенные данные
Документ корректен, т.к. QXmlQuery его корректно загружает
Но при этом никакие запросы не выполняются (результат равен "\n", но в FireBug они выдают корректный результат)

т.е. даже данный запрос ничего не выдает
Код
C++ (Qt)
   query.setQuery("declare namespace x = \"http://www.w3.org/1999/xhtml/\";"
                  "doc('file.dat')/x:html/x:body");
   QString s;
   query.evaluateTo(&s);
 


В чем может быть причина?
Записан
alexman
Гость
« Ответ #1 : Сентябрь 03, 2011, 15:41 »

xQuery/xPath не совсем подходят для html
Записан
alexman
Гость
« Ответ #2 : Сентябрь 03, 2011, 15:52 »

Для запросов можно использовать возможности webkit+Standard CSS2 selector.

из асиста:
QWebElement QWebElement::findFirst ( const QString & selectorQuery ) const
Returns the first child element that matches the given CSS selector selectorQuery.
Standard CSS2 selector syntax is used for the query.
Записан
nixman05
Гость
« Ответ #3 : Сентябрь 03, 2011, 15:55 »

xQuery/xPath не совсем подходят для html

Но ведь html является подмножеством xml? А в документации указана возможность парсинга xml подобных структур.
Тогда каким образом преобразовать html документ в xml?
Записан
nixman05
Гость
« Ответ #4 : Сентябрь 03, 2011, 16:00 »

Для запросов можно использовать возможности webkit+Standard CSS2 selector.

из асиста:
QWebElement QWebElement::findFirst ( const QString & selectorQuery ) const
Returns the first child element that matches the given CSS selector selectorQuery.
Standard CSS2 selector syntax is used for the query.

А поподробней. каков запрос для поиска div с определенным id?
И не будет ли низкой производительность в данном случае?
Записан
alexman
Гость
« Ответ #5 : Сентябрь 05, 2011, 21:19 »

xQuery/xPath не совсем подходят для html

Но ведь html является подмножеством xml? А в документации указана возможность парсинга xml подобных структур.
Тогда каким образом преобразовать html документ в xml?
html имеет некоторые мелкие отличия от xml. Соответственно, xQuery/xPath не катит.

Цитировать
А поподробней. каков запрос для поиска div с определенным id?
Здесь посмотри синтаксис.

Цитировать
И не будет ли низкой производительность в данном случае?
Хз, но точно знаю что средства qt для xPath тормозные.
Записан
alexman
Гость
« Ответ #6 : Сентябрь 05, 2011, 21:20 »

Цитировать
А поподробней. каков запрос для поиска div с определенным id?
Вроде так div[id="safgasgasgas"]
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.067 секунд. Запросов: 20.