====== Fare il parsing dell'output di cUrl ====== Autore: **//Fabio Di Matteo//** \\ Ultima revisione: **//17/03/2017 - 10:16//** \\ \\ In questo articolo vedremo come prelevare il valore percentuale dei file scaricari con curl: #include #include #include #include int main(int argc, char** argv) { int progress=0; FILE *fd; char line[1024]={0,}; system("echo 0 >progress.txt"); //creo il file progress.txt system("curl --libcurl libcurl.txt --stderr progress.txt -O --stderr progress.txt -O http://www.freemedialab.org/listing/stupid-backup/stupid-backup.exe &"); fd = fopen("progress.txt", "r"); while(progress<100) { if (fd) { // scorro il file fino alla fine (prendo l'ultima riga) // e metto la riga in line while(fgets(line, 1024, fd)!=NULL) { } //Prelevo dall'ultima riga il valore dell'avanzamento del download if (sscanf(line, "%*[^0-9]%d", &progress) ) { printf( "Progress: %d\% \n ", progress); } } } fclose(fd); printf("Download terminato\n"); return 0; }