Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    c++ inviare e ricevere dati via internet

    ciao a tutti,
    Vorrei creare un piccolo programmino ( di prova ) in c++ per la gestione dei treni... ti dice orari, stazioni ritardi. Si sono un pendolare..... e per Linux non esiste nulla.

    Estrapolando dal codice scritto in qt
    codice:
       QNetworkRequest request;     QString dati;     //costruisce i dati da inviare al server sottoforma di richiesta POST     dati = QString("numeroTreno=%1&tipoRicerca=numero&lang=IT").arg(m_trenoAttuale);     request.setUrl(QUrl("http://mobile.viaggiatreno.it/viaggiatreno/mobile/numero"));     request.setRawHeader("Content-type", "application/x-www-form-urlencoded");     networkAM()->post(request, dati.toUtf8());
    Deduco che passi questi dati

    dati = QString("numeroTreno=%1&tipoRicerca=numero&lang=IT ").arg(m_trenoAttuale);

    Vorrei ricrearlo in maniera più semplice da gestire via shell a linea di comando.

    Non conosco il modo per interfacciarmi via web e inviare dei dati tramite il c++
    Potete aiutarmi?
    Lele

  2. #2
    Utente di HTML.it L'avatar di torn24
    Registrato dal
    Aug 2008
    Messaggi
    551

    ciao

    per il web userei linguaggi differenti dal c++ , ma da dove preleveresti i dati dei treni ????

    se intendi comunicare in internet ,tra due computer pc , l'argomente è complicato!!
    Non conosco molto l'argomento , ma credo che tu abbia bisogno di un applicazione
    client server con utilizzo di socket.
    argomenti non propio , basilari , ma se fai ricerche mirate con google puoi trovare esempi.

    comunque , anche creando i programmi , dovresti avere il processo server attivo su un
    computer , e processo client attivo su un altro , e conoscere ip a quale collegarti
    che normalmente è dinamico , cambia ogni volta , quindi non ti puoi collegare semplicemente
    a un altro computer , ma devi sapere che ip gli è stato assegnato in quel momento .


    io ti consiglio di lasciar perdere
    ricerca in internet un sito con gli orari dei treni
    Tecnologia

  3. #3
    Ciao

    io ho già un programma scritto in c++/Qt che fa questo lavoro, si interfaccia al sito gli passa i vari parametri stazione di partenza e arrivo, ora giorno

    Per l'indirizzo non credo che sia un problema perché si connette direttamente al sito
    request.setUrl(QUrl("http://mobile.viaggiatreno.it/viaggiatreno/mobile/numero"));

    Al occorrenza ho anche il codice programma rilasciato in gnu...

    Io vorrei capirlo al meglio, quindi rifarlo in un secondo momento
    grazie
    Lele

  4. #4
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Se vuoi comprendere quel codice, comincia a leggere una guida alle Qt, solo alla parte della libreria che gestisce il network, dovrebbe bastarti per quel pezzettino, altrimenti studia una libreria (io non conosco ottimamente il c++) che ti permetta la comunicazione con un server in internet, studia il codice html di un sito che da informazioni sui treni, quindi sarai in grado di implementare un programma che richieda informazioni e ne esegua il parsing.
    Io in ogni caso userei un linguaggio a più alto livello, il parsing in c++ diventa assai complicato per la sua gestione delle stringhe.

  5. #5
    Utente di HTML.it L'avatar di torn24
    Registrato dal
    Aug 2008
    Messaggi
    551

    ciao

    Io mi sono basato sul titolo dell'argomento
    c++ inviare e ricevere dati via internet
    da qui si poteva presumere , comunicare tra due computer in internet ,
    e ti ho suggerito applicazioni client e server con soket

    Ma non centrano nulla ,con quello che vorresti fare tu , e anche il tuo titolo centra poco!

    più appropiato sarebbe , comunicare con un sito web in c++!

    ovviamente è solo a scopo didattico , visto che hai il sito a disposizione con tutte le
    informazioni che cerchi .


    ma anche il tuo vero scopo , non si rivela con poche difficoltà .auguri
    Tecnologia

  6. #6
    codice:
    ma anche il tuo vero scopo , non si rivela con poche difficoltà .auguri
    in poche parole è fattibile o no? Sono stufo di fare esercizi che non servono a nulla... vorrei fare un qualcosa di interessante.....

    e poi un pendolare capirebbe al volo l'utilità di un programmino come questo...

    Grazie
    lele

  7. #7
    Utente di HTML.it L'avatar di torn24
    Registrato dal
    Aug 2008
    Messaggi
    551

    ciao

    Sono connesso e scrivo per passare un po il tempo
    quindi questa risposta non ti sarà di un aiuto pratico !

    e fattibile la cosa , io non potrei farlo ,con le mie capacità di programmazione non posso
    provare a reallizzare il progetto !

    hai detto di avere un programma che fa quello che vorresti fare , deduzione, per qualcuno
    è possibile reallizzarlo !

    e poi un pendolare capirebbe al volo l'utilità di un programmino come questo...

    per un pendolare è sicuramente utile avere gli orari e dati dei treni , ma sono gia
    disponibili nel sito a cui vorresti connetterti , e accessibili da qualunque computer ,
    con qualunque sistema operativo , attraverso un browser .

    in pratica , il programma sarebbe coplesso , per ottenere l'unico risultato di non usare
    un browser , ma un programma attraverso shell , è il classico caso dove si può dire,

    IL GIOCO NON VALE LA CANDELA
    Tecnologia

  8. #8
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Si è fattibile, ma devi studiare una libreria per la comunicazione http e il codice html generato dal sito a cui ti connetti per poi implementare un parser per questo codice, condivido il fatto che il gioco non vale la candela, specialmente visto che useresti un linguaggio a "basso livello", per il parser poi appoggiarti a sistemi come yacc o lexer, senza implementarlo da 0, per le librerie per il protocollo http io non ne conosco.

    Resta il fatto che io userei un linguaggio a più alto livello per progetti come questi, io personalmente userei ocaml, haskell o python (belli sono i sistemi di parsing di ocaml)

  9. #9
    e se per le librerie di alto livello usassi le qt?
    che ne pensi?

    Lele

  10. #10
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Puoi farlo benissimo per quanto riguarda il network, ma ricorda che le qt sono fondamentalmente delle librerie grafiche e non mi sembra il caso di includerle in un progetto a linea di comando.
    In ogni caso usando le Qt avresti già il codice e non avrebbe senso riscriverlo, casomai avrebbe senso studiarlo...
    Io cercherei un'altra libreria fra quelle disponibili su internet, in ogni caso buona fortuna

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.