Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Roborock Qrevo Curv 2 Flow: ora lava con un rullo
Qrevo Curv 2 Flow è l'ultima novità di casa Roborock per la pulizia di casa: un robot completo, forte di un sistema di lavaggio dei pavimenti basato su rullo che si estende a seguire il profilo delle pareti abbinato ad un potente motore di aspirazione con doppia spazzola laterale
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Abbiamo provato a fondo il nuovo Magic 8 Lite di HONOR, e per farlo siamo volati fino a Marrakech , dove abbiamo testato la resistenza di questo smartphone in ogni condizione possibile ed immaginabile. Il risultato? Uno smartphone praticamente indistruttibile e con un'autonomia davvero ottima. Ma c'è molto altro da sapere su Magic 8 Lite, ve lo raccontiamo in questa recensione completa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-05-2006, 22:08   #1
Label84
Junior Member
 
Iscritto dal: May 2006
Messaggi: 21
[C/C++]Aiuto progetto!!!!

Ciao a tutti!!!
Sono nuova, ed ho subito una domanda da farvi....
Devo scrivere un programma che prende in ingresso una lista di URL e avvisa quando uno di questi viene aggiornato...
la mia domanda è: esiste una funzione che prende in ingresso un url e riesce a leggerne l'header?? Io non sono proprio riuscita a trovare nulla!!!
grazie a tutti coloro che mi aiuteranno!!!
Label84 è offline   Rispondi citando il messaggio o parte di esso
Old 12-05-2006, 22:19   #2
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
penso che ti basti farti mandare l'html dal webserver, tenere in memoria l'ultima copia e poi confrontare la copia attuale con la precedente
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 13-05-2006, 10:38   #3
Label84
Junior Member
 
Iscritto dal: May 2006
Messaggi: 21
Grazie wisher!!!
ti dico cosa avevo in mente di fare....
io pensavo di farmi mandare l'header dell'URL, e confrontare la data data di ultima modifica con quella corrente,,,,
(è questo che intendevi tu??)
il mio problema è che non so come "farmi mandare l'header"... sarà un problema stupido....ma non ci salto fuori e purtroppo non ho nemmeno molto tempo....
grazie a tutti...e buona giornata!!!!
Label84 è offline   Rispondi citando il messaggio o parte di esso
Old 13-05-2006, 10:48   #4
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
per ottenere un file da un webserver (cui ti devi essere connesa) devi mandare con una send una stringa composta da
"GET "+nome_file_da_scaricare+" HTTP/1.0\r\n\r\n"
poi mettiti in recv e ottieni l'html...
se riesci a leggere l'header tanto meglio, altrimenti io ti consigliavo con una soluzione poco elegante di salvare direttamente il file e poi controllare che ogni singolo char del file nuovo sia uguale al char corrispondente del file vecchio
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 13-05-2006, 11:22   #5
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
ti faccio un esempio in python, spero si capisca, come linguaggio è molto semplice
Codice:
import socket
HOST = "www.google.com"
PORT = 80
connessione = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
connessione.connect((HOST, PORT))
connessione.send("GET / HTTP/1.0 \n\n")
data = connessione.recv(1024)
msg=data
while data!="":
    data = connessione.recv(1024)
    msg = msg+data
print msg
connessione.close()
in questo modo ottengo
Codice:
HTTP/1.0 302 Found

Location: http://www.google.it/

Cache-Control: private

Set-Cookie: PREF=ID=00f576cd71567ba6:TM=1147511954:LM=1147511954:S=V5I9Bqd-VpBqDT70; expires=Sun, 17-Jan-2038 19:14:07 GMT; path=/; domain=.google.com

Content-Type: text/html

Server: GWS/2.1

Content-Length: 218

Date: Sat, 13 May 2006 09:19:14 GMT

Connection: Keep-Alive



<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>302 Moved</TITLE></HEAD><BODY>
<H1>302 Moved</H1>
The document has moved
<A HREF="http://www.google.it/">here</A>.

</BODY></HTML>
l'unica cosa che resta da fare è separere l'header del messaggio dal codice html vero e proprio
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 13-05-2006, 11:41   #6
wisher
Senior Member
 
L'Avatar di wisher
 
Iscritto dal: Aug 2005
Messaggi: 2755
più precisamente la parte dell'header del trasferimento e i dati a noi utili sono separati dalla sequenza
Codice:
"\r\n\r\n"
__________________
wisher è offline   Rispondi citando il messaggio o parte di esso
Old 13-05-2006, 20:54   #7
Label84
Junior Member
 
Iscritto dal: May 2006
Messaggi: 21
Grazie mille!!!! Ora provo a buttare giù qualcosa da sola....nel caso ti richiamo!!!! ...buona serata!
Label84 è offline   Rispondi citando il messaggio o parte di esso
Old 18-05-2006, 22:37   #8
Label84
Junior Member
 
Iscritto dal: May 2006
Messaggi: 21
Scusa wisher, ma sono ancora qui....e ancora + in crisi!!!
A parte il fatto che le socket in c sono un pò + incasinate che nel tuo esempio, in realtà ho un problema di base:
I metodi HTTP!!!
Ho notato che con il metodo "GET / HTTP/1.0 \n\n"
spesso nell'header che ottengo, non è presente il campo "last-m2odified" (come nel tuo esempio)..così il mio algoritmo è andato a farsi benedire!!!
Da quello che ho studiato c sarebbe il meto GET condizionato:
"GET / HTTP/1.0 \n\n
If-Modified-SInce: data"

che dovrebberitornare un codice 304 senza body,nel caso il documento non è stato modificato dalla data che gli ho mandato, ed una risposta normale(come una get semplice) nel caso ci siano state modifiche.....
il problema è che ho provato con un pò di siti (con putty) e a volte mi risponde con un codice 304, a volte con un codice 302 che nn so cosa significa, a volte mi da" 200, ok" senza body, a volte "200 con body" e altre volte ancora mi dice che il documento è stato aggiornato anche se ci metto una data "futura"!!!!
insomma nn so come interpretare le risposte....e di conseguenza nn so + come impostare il programma!!!

qualcuno riesce ad aiutarmi???
sono sull'orlo di una crisi di nervi!!!
grazie in anticipo!!
Label84 è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2006, 11:29   #9
Label84
Junior Member
 
Iscritto dal: May 2006
Messaggi: 21
Nessuno ha qualche suggerimento???? please!!!!
sono bloccata!!

Label84 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Roborock Qrevo Curv 2 Flow: ora lava con un rullo Roborock Qrevo Curv 2 Flow: ora lava con un rull...
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Terremoto sui dazi USA: la Corte Suprema...
Arianespace potrebbe lanciare il primo r...
Google Pixel 10a disponibile al prezzo m...
Microsoft Copilot nei guai: email riserv...
AOC a 399€ su Amazon: QD-OLED 240 Hz e 0...
La Cina ha recuperato dal mare il primo ...
Boeing CST-100 Starliner: la NASA rende ...
hiop e TaDa uniscono le forze per trasfo...
Thermal Grizzly mostra il Ryzen 7 9850X3...
AMD Ryzen 'Olympic Ridge' Zen 6 per desk...
Donald Trump renderà pubbliche in...
Prezzo mai visto da mesi: ECOVACS DEEBOT...
Non solo S26, Samsung sta per lanciare a...
Windows 11 avrà a breve uno Speed...
Ask Intel: l'assistente IA che ti aiuta ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 08:06.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v