Форум программистов, компьютерный форум, киберфорум
Наши страницы

C++

Войти
Регистрация
Восстановить пароль
 
Nikto
147 / 129 / 34
Регистрация: 28.11.2009
Сообщений: 385
Записей в блоге: 13
#1

Парсинг и обход дерева - C++

16.07.2016, 21:47. Просмотров 261. Ответов 3
Метки нет (Все метки)

С помощью библиотеки htmlcxx парсится веб страничка. На выходе получаю DOM дерево. Ладно бы была одна страничка, тогда написал функцию для обхода, так страничек много и для каждой писать функцию для обхода с соответствующим поиском тегов и атрибутов это ж ппц как не охото.
На шарпе юзал AngleSharp с его QuerySelectorAll, писал QuerySelectorAll("tr td:nth-child(1) a") и получал все нужные элементы. Пытался найти библиотеки с похожим функционалом для C++, но гугл ничего толкового не выдал, все они дают в результате дерево.
Кто-нибудь знает способ универсального обхода дерева с заданием входных данных как у QuerySelectorAll?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.07.2016, 21:47
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Парсинг и обход дерева (C++):

Обход файловой системы и мультипоточность - C++
Работаю над программой индексирования файловой системы. Все диски обходяться(как по дереву от корня) до последней папки рекурсивно и...

Обход элементов std::map в порядке их создания - C++
Имеется ассоциативный массив и его заполнение: std::map<unsigned,string> arr; arr = "abc"; arr = "def"; arr = "ghi"; Теперь...

Обход бинарного дерева - C++ Builder
люди, выручайте, очень срочно нужен исходник для обхода бинарного дерева, хоть на С++, хоть на Паскале. У кого есть киньте, нужно...

обход фильтра - C++ Builder
Люди помогите. У нас в школе на компах стоит фильтр и запрещает выход на некоторые сайты, как написать программу для обхода фильтра

Обход матрицы С++ Builder - C++ Builder
Есть матрица 4х4 4 3 12 7 7 1 4 12 5 2 9 1 4 6 6 17 Нужно вывести её элементы как показано на рисунке Ещё нужно найти...

Обход капчи в яндекс - C++ Builder
Запускаю страницу яндекса через CppWebBrowser с разными прокси - выходит страница с капчей. Можно ли добиться чтобы она не выходила? ...

3
rao
853 / 406 / 119
Регистрация: 02.04.2014
Сообщений: 1,171
17.07.2016, 10:47 #2
Не знаю что такое QuerySelectorAll, поэтому может быть ляпну не в тему. Есть такая штука как MSXML. Она умеет работать с содержимым на языке запросов XPath.
0
Nikto
147 / 129 / 34
Регистрация: 28.11.2009
Сообщений: 385
Записей в блоге: 13
17.07.2016, 12:48  [ТС] #3
rao, смущает приставка MS, эта штука только под винду?

Добавлено через 19 минут
Нашёл такую штуку http://hcxselect.sourceforge.net/doc/select_8cpp-example.html
Пока буду разбираться с ней. Если кто знает хороший c++ парсер с возможностью сделать запрос css selector или xpath, то отпишитись, потому как htmlcxx что-то барахлит.
0
Dmitriy_M
1360 / 1243 / 114
Регистрация: 20.03.2009
Сообщений: 4,449
Записей в блоге: 11
18.07.2016, 11:50 #4
Я вот такую штуку сделал вокруг Gumbo.
2
18.07.2016, 11:50
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.07.2016, 11:50
Привет! Вот еще темы с ответами:

Обход элементов формы - C++ Builder
Всем доброго времени суток. Знает ли кто-нибудь простой способ обхода всех дочерних элементов формы? Хочется попробовать сделать Enabled =...

Обход всех путей в графе - C++ Builder
Помогите с алгоритмом поиска всех путей на графе.Обыскал весь инет робочего не нашол

Операции над бинарными деревьями: построение дерева, обход дерева, вставка и удаление элемента дерева - Pascal
Пожалуйста кто сможет, помогите составить программу: Организация по трудоустройству населения сохраняет резюме клиентов в виде бинарного...

Построение бинарного дерева. Обход дерева - PascalABC.NET
Построить дерево поиска с элементами – числами. С использованием операций Locate и DeleteLeft найти узел с заданным значением и исключить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru