Форум программистов, компьютерный форум, киберфорум
C++/CLI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 29.10.2015
Сообщений: 59

Парсинг html страницы. Как найти фразу?

06.05.2020, 16:18. Показов 1470. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Подскажите пожалуйста есть код:

C++
1
2
3
4
5
6
7
    WebClient^ WebBrowserClient = gcnew WebClient;
    String^ url = "https://google.com";
    WebBrowserClient->Headers->Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
    Stream^ data = WebBrowserClient->OpenRead(url);
    StreamReader^ reader = gcnew StreamReader(data);
    String^ s = reader->ReadToEnd();
    Console::WriteLine(s);
В переменной String^ s находится код страницы. Можно ли каким то образом или оставить в ней то что мне нужно или скопировать нужную подстроку?

Пробовал сделать функцию но ни чего не получилось, пишет class "System::String" не содержит члена "find"


C++
1
2
3
4
String parse(String str){
    size_t pos = str.find("de1");
    (pos != std::string::npos);
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.05.2020, 16:18
Ответы с готовыми решениями:

Парсинг HTML, генерация новой HTML страницы
Добрый день. Пишу небольшое расширение для Firefox, используя JS. Общая задача выглядит так: Необходимо сгенерировать...

Парсинг HTML страницы
Здравствуйте. Передо мной стоит задача выдрать данные из страницы, (время начала занятия, название предмета, аудиторию, имя преподавателя),...

Парсинг HTML страницы
Всем доброго дня. Кто делал парсинг HTML стриницы с помощью CppWebBrowser и OleObject. Как считать загруженную страницу из CppWebBrowser в...

7
Just Do It!
 Аватар для XLAT
4211 / 2668 / 655
Регистрация: 23.09.2014
Сообщений: 9,082
Записей в блоге: 3
07.05.2020, 00:15
Лучший ответ Сообщение было отмечено Stegoman как решение

Решение

Stegoman, у вас непростой С++,
а С++\clr,
а значит юзать надо методы из .NET,
они такие же, как правило, например, и в C#

Вот здесь вы найдёте то что вам нужно:
MSDN - String
или более компактно:
Работа со строками. Класс System.String
1
0 / 0 / 0
Регистрация: 29.10.2015
Сообщений: 59
07.05.2020, 07:26  [ТС]
XLAT, Спасибо за совет. А может есть варианты как то еще получить html страницу? Про библиотеку curl знаю, но не хочу делать с ней(( Может кто то делал подобное стандартными методами с++?
Смысл получить страницу сайта и забрать строку. Например получить стр и забрать курс валют.
0
Just Do It!
 Аватар для XLAT
4211 / 2668 / 655
Регистрация: 23.09.2014
Сообщений: 9,082
Записей в блоге: 3
08.05.2020, 10:13
Цитата Сообщение от Stegoman Посмотреть сообщение
получить страницу сайта и забрать строку
гуглится ваша тема на раз,
вот:
System_Net_WebClient_DownloadString_System_String

но валюту там поискать всё ж придётся.
0
0 / 0 / 0
Регистрация: 29.10.2015
Сообщений: 59
08.05.2020, 21:56  [ТС]
Да, спасибо разобрался, как оказалось это не сложно было))). Только проблема в теперь в том, что у меня часть проекта с clr, а часть без. И собрать все не могу(((
0
Just Do It!
 Аватар для XLAT
4211 / 2668 / 655
Регистрация: 23.09.2014
Сообщений: 9,082
Записей в блоге: 3
08.05.2020, 22:10
Stegoman,
Переделать имеющееся консольное приложение в форму

Цитата Сообщение от Stegoman Посмотреть сообщение
Только проблема в теперь в том, что у меня часть проекта с clr, а часть без
то что без: обрамляйте так:
C++
1
2
3
4
#pragma unmanaged
#include <vector>
#include "_my_native.h" ///<<<--- ваш нативный код.
#pragma managed
0
Just Do It!
 Аватар для XLAT
4211 / 2668 / 655
Регистрация: 23.09.2014
Сообщений: 9,082
Записей в блоге: 3
09.05.2020, 15:35
+

для преобразований неуправляемых из/в управляемые переменные используйте маршалинг:
https://docs.microsoft.com/ru-... ew=vs-2017
0
0 / 0 / 0
Регистрация: 29.10.2015
Сообщений: 59
11.05.2020, 21:31  [ТС]
XLAT. Спасибо за помощь я разобрался с тем проектом. А можно еще вопрос? Возможно вы имели дело с libcurl проблема в том, что не работает с HTTPS (ошибка "CURLE_UNSUPPORTED_PROTOCOL (1) CURLcode"), а с HTTP все работает. Что то я много прогуглил но ни чего толкового не нашел((

Добавлено через 7 минут
я не пойму как сделать что бы работало с https
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.05.2020, 21:31
Помогаю со студенческими работами здесь

Парсинг html страницы
Доброго времени суток! Мне нужно сделать парсинг html страницы из WWW. Подскажите пожалуйста, как организовать загрузку страницы для...

Парсинг HTML страницы
Добрый всем день! Блин! Уже какие сутки бьюсь над одной проблемой и не знаю куда копать. В общем, хочу написать парсер html страниц для...

Парсинг html страницы
Необходимо загрузить страницу в Grid: ...

Парсинг HTML страницы
вот есть текст &lt;div class=&quot;w300 left&quot;&gt; &lt;span class=&quot;project_name&quot;&gt;Подписка&lt;/span&gt; &lt;/div&gt; &lt;div class=&quot;w150 left&quot;&gt; 0.12...

Парсинг HTML страницы
Имеется следующий текств html странице: &lt;/thead&gt;&lt;tbody&gt;&lt;tr class=&quot;OutOfBlock&quot;&gt;&lt;td...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru