• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Połączenie programu w języku C++ z internetem.

Object Storage Arubacloud
0 głosów
2,981 wizyt
pytanie zadane 29 października 2015 w C i C++ przez Bebes Początkujący (300 p.)
Witam serdecznie.

Czy jest możliwość aby połączyć program napisany w C++ z internetem?

Na przykład połączenie programu z wikipedią aby program po wpisaniu określonej frazy wyszukał odpowiedź, skopiował  domyślny tekst (powiedzmy trzy pierwsze linijki teksu) i pokazał to w programie za komendą cout ?

Przepraszam za tak laickie pytyanie i prosze o szybką odpowiedź.

Pozdrawiam Serdecznie

Bebes.

4 odpowiedzi

0 głosów
odpowiedź 29 października 2015 przez Avernis Nałogowiec (27,400 p.)
komentarz 29 października 2015 przez niezalogowany
Hm, ja tym się póki co nie interesowałem, ale myślę, że są odpowiednie biblioteki do "łączenia się" z internetem w C++, jakieś sockety, czy coś (mówię, na razie się na tym nie znam, ale ciekawa sprawa) i nie trzeba używać do tego biblioteki graficznej ;)
komentarz 29 października 2015 przez adrian17 Ekspert (344,860 p.)
Akurat SFML można używać bez żadych komponentów graficznych, wtedy jak funkcjonuje jak całkiem kompetentny wrapper systemowych socketów.
komentarz 29 października 2015 przez niezalogowany
No tak, pewnie, to prawda, ale chodziło mi o to, że są do tego specjalne biblioteki. No chyba, że ktoś serio chce używać SFML-a ;)
0 głosów
odpowiedź 29 października 2015 przez furas Maniak (53,800 p.)
W innych językach do wyciągania danych ze strony WWW (co często nazywa się "web scraping") wykorzystuje dwie biblioteki. Jednak za pomocą protokołu HTTP potrafi pobrać stronę z serwera a druga potrafi te dane parsować i stworzyć w pamięci drzewo elementów aby potem można było wygodnie wyszukiwać elementy podając ścieżkę XPath lub selektor CSS.

W uproszczonej wersji może Ci wystarczy obsługa gniazd i znajomość podstaw protokołu HTTP oraz zwykłe wyszukiwanie kawałka tekstu w większym tekście - nie zawsze jednak to się sprawdza, nawet z użyciem wyrażeń regularnych.
komentarz 29 października 2015 przez niezalogowany
Co? O_O Założę się, że tak jak ja (czyli póki co nie zajmujący się takimi internetowymi rzeczami), nie za dużo zrozumiał :D
komentarz 29 października 2015 przez furas Maniak (53,800 p.)
No niestety nie robię takich rzeczy w C++ tylko w Pythonie więc nie potrafię podać przykładu w C++ :)

Python do wyszukiwania danych w pliku HTML wykorzystuje bibliotekę lxml, ktora jest napisana w C lub C++ więc tą bibliotekę może akurat dało by sie wykorzystać ale wymagało by więcej linii kodu.
komentarz 29 października 2015 przez furas Maniak (53,800 p.)
ps. niektóre języki do pobierania stron wykorzystują bibliotekę cURL, która pewnie też jest napisana w C lub C++ i dało by się ją wykorzystać.

Przypuszczam, że mogą być jakieś wygodniejsze narzędzia i szukałbym ich pod hasłem "web scraping"
komentarz 29 października 2015 przez niezalogowany
Muszę w końcu zrobić coś więcej z tym Pythonem, bym się dowiedział wielu nowych rzeczy ;)
komentarz 29 października 2015 przez furas Maniak (53,800 p.)

Poprosiłem Goggle o pomoć i na pytanie "c++ webscraping" w jednej z odpowiedzi na StackOverflow było 

  • libcurl to download the html file
  • libtidy to convert to valid xml
  • libxml to parse/navigate the xml

Ale była też ciekawsza odpowiedz - krótki przykładowy kod na portalu Rosetta Code

http://rosettacode.org/wiki/Web_scraping#C.2B.2B

0 głosów
odpowiedź 29 października 2015 przez adrian17 Ekspert (344,860 p.)
Szczera, praktyczna rada: do takich rzeczy się nie stosuje zazwyczaj C++ bo to udręka; Napisanie analogicznego kodu w C#/Javie zajmie kilka razy mniej czasu/kodu, w Pythonie/Rubym kilkadziesiąt razy mniej.
0 głosów
odpowiedź 29 października 2015 przez joker Nałogowiec (31,150 p.)

Jest to możliwe, natomiast C++ nie dokońca jest na to gotowe, lepiej do czegoś takiego użyć C# lub Java albo po prostu PHP, natomiast jeżeli chcesz to koniecznie zrobić w C++ to zajrzyj tutaj: http://cpp0x.pl/kursy/Kurs-SFML-2-x-C++/Dodatkowe-materialy/Komunikacja-sieciowa-TCP-i-UDP/515

Podobne pytania

0 głosów
0 odpowiedzi 101 wizyt
pytanie zadane 15 lutego 2021 w C i C++ przez Programmer01 Początkujący (490 p.)
0 głosów
1 odpowiedź 128 wizyt
0 głosów
0 odpowiedzi 414 wizyt
pytanie zadane 10 września 2019 w Sieci komputerowe, internet przez Merk Nowicjusz (140 p.)

92,580 zapytań

141,432 odpowiedzi

319,665 komentarzy

61,965 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...