FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour ¿Como se descarga un PDF automaticamente? RESUELTO
Posts: 282
Joined: Mon Oct 10, 2005 08:55 AM
¿Como se descarga un PDF automaticamente? RESUELTO
Posted: Thu Oct 04, 2012 10:11 AM

Hola a todos,
Me conecto a una pagina web que contiene un documento PDF, pero en vez de visualizarlo necesito descargarlo utilizando solo codigo de manera que el proceso sea transparente para el usuario.
Y no tengo idea como se hace esto ultimo.

¿Alguna idea?
Saludos :shock:

Posts: 989
Joined: Thu Nov 24, 2005 03:01 PM
Re: ¿Como se descarga un PDF automaticamente?
Posted: Thu Oct 04, 2012 01:26 PM
Se me ocurren algunas soluciones:

1) Usar un objeto de Internet explorer, pasandole la url del pdf y luego invocando un metodo saveas() o algo parecido. Yo no manejo ese objeto pero seguro algun compañero puede ayudar.
2) Usar wget, http://users.ugent.be/~bpuype/wget/, es una linea de comandos
3) Otra que probablemente sea de ayuda en HB_TIP, seguro que se puede usar, pero no la controlo muy bien.
4) Mi preferida sería usar hb_curl, que está en las contribs de Harbour, es un poco compleja pero te será muy útil para infinidad de cosas.

Code (fw): Select all Collapse
         #include "hbcurl.ch"
         curl_global_init()

         IF ! Empty( curl := curl_easy_init() )
            curl_easy_setopt( curl, HB_CURLOPT_DOWNLOAD )
            curl_easy_setopt( curl, HB_CURLOPT_URL, "http[s]://la direccion de tu pdf")

            curl_easy_setopt( curl, HB_CURLOPT_SSL_VERIFYPEER, .f. )
            curl_easy_setopt( curl, HB_CURLOPT_SSL_VERIFYHOST, .f. )
            curl_easy_setopt( curl, HB_CURLOPT_DL_BUFF_SETUP )
            curl_easy_setopt( curl, HB_CURLOPT_NOPROGRESS, .f. )
            curl_easy_setopt( curl, HB_CURLOPT_VERBOSE, .T. )

            if curl_easy_perform( curl ) == 0
               tmp := curl_easy_dl_buff_get( curl )

               If left( tmp, 4 ) == '%PDF'
                  Memowrit( 'HeBajadoEl.pdf', tmp )
               EndIf
            endif
        endif


Aprender CURL es un gran primer paso para acercarnos a internet
Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"
Posts: 282
Joined: Mon Oct 10, 2005 08:55 AM
Re: ¿Como se descarga un PDF automaticamente?
Posted: Thu Oct 04, 2012 02:08 PM

Carlos muchas gracias, al menos tengo por donde empezar.

Yo compilo con xHarbour ¿Se puede usar HB_curl o algún equivalente? :shock:

Posts: 989
Joined: Thu Nov 24, 2005 03:01 PM
Re: ¿Como se descarga un PDF automaticamente?
Posted: Thu Oct 04, 2012 04:53 PM

Si, seguro. Curl es LA libreria, esta disponible en C y ports para todos los lenguajes que conozco.

http://xharbour.org/index.asp?page=prod ... tributions

ahi aparce como hbcurl

Saludos
Carlos Mora
http://harbouradvisor.blogspot.com/
StackOverflow http://stackoverflow.com/users/549761/carlos-mora
“If you think education is expensive, try ignorance"
Posts: 282
Joined: Mon Oct 10, 2005 08:55 AM
Re: ¿Como se descarga un PDF automaticamente?
Posted: Thu Oct 04, 2012 07:51 PM

De nuevo, gracias.

Ahora tengo material para 'entretenerme' :shock:

Continue the discussion