Quien me ayuda...Adquirir datos de respuesta de una web

Post Reply
softruz
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Quien me ayuda...Adquirir datos de respuesta de una web

Post by softruz »

Muy buenas foro, tengo un problema, siempre he tratado con este tipo de problemas y los he resuelto pero hoy no se lo que pasa y no puedo recoger los datos de una web que he realizado para adquirir unos datos, la cuestión es que quiero recoger lo que devuelve la web (que es mía):

http://www.simjcloud.com/testing/leafle ... =-4.639551

siempre me retorna la web pero sin los datos que devuelve, y no se como hacerlo para recoger los datos que devuelven, que en este caso son:

50902:2668.4

siempre que hago cualquiero código me devuelve la web vacia sin esos datos, yo creo que no me los devuelve porque la web siempre tarda un poco en adquirir esos datos.

¿Alguien me podría ayudar?

MUUUCHAS GRACIAS.
User avatar
Willi Quintana
Posts: 859
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú
Contact:

Re: Quien me ayuda...Adquirir datos de respuesta de una web

Post by Willi Quintana »

Hola,
Escribe el código que usas para recoger la información de esa web
Salu2
softruz
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Re: Quien me ayuda...Adquirir datos de respuesta de una web

Post by softruz »

Antetodo gracias por responder, he utilizado muchas funciones diferentes pero ninguna funciona,

aqui las que he probado pero nada

function test(othis)
local cUrl:="",oHttp:="",oIE:=nil,cbody:="",i:=0
cUrl:="https://maps.googleapis.com/maps/api/ge ... ress=calle juan de cervantes 38"
//cUrl:="http://server/leaflet/html/index.html?l ... =37.587115"
cUrl:="http://www.simjcloud.com/testing/leafle ... =-4.639551"
oIE := CREATEOBJECT( "InternetExplorer.Application" )
WITH OBJECT oIE
:Visible := .f.
:ToolBar := .f.
:StatusBar := .f.
:MenuBar := .f.
:FullScreen := .f.
:Left:=150
:Top:=150
:Invoke( "Navigate", cURL )
END WITH

Do While oIE:Busy
SysWait(1)
SysRefresh() // To Refresh
Loop
Enddo
for i:=1 to 999
othis:insertlog(allstr(i))
SysRefresh()
next

try
cBody := oIE:Document:body:innerText
catch
cBody := ""
end catch

msginfo(cbody)

return

function test1()
local oHttp:=nil,cUrl:="http://www.simjcloud.com/testing/leafle ... =-4.639551"
oHttp:=CreateObject("winhttp.winhttprequest.5.1")
oHttp:SetTimeouts(30000,30000,30000,30000)
oHttp:Open("GET",cUrl,.F.)
//oHttp:SetRequestHeader("Authorization","Basic dXNlcjpwYXNzd29yZA==") // BASE64 de "user:password"
//oHttp:SetRequestHeader("Credentials","user:password")
oHttp:Send('{ "Username": "user@company.com", "Password": "secret"}')
oHttp:waitForResponse()
msginfo(oHttp:ResponseText)
return
function test2(othis)
Local oHttp,i:=0

Try
oHttp := CreateObject( 'MSXML2.XMLHTTP' )
Catch
oHttp := CreateObject( 'Microsoft.XMLHTTP' )
End
oHttp:Open( 'GET', "http://www.simjcloud.com/testing/leafle ... =-4.639551", .F. )

//oHttp:SetRequestHeader( "Content-Type","application/json")

oHttp:Send( '{ "latfrom": "37.899926", "lngfrom": "-4.731114","latto": "37.899926", "lngto": "-4.731114"}' )
SysRefresh()
for i:=1 to 999
othis:insertlog(allstr(i))
SysRefresh()
next

MsgInfo(oHttp:ResponseBody)
return
// http://server/leaflet/html/index.html?l ... =-4.639551
function test3(othis)
local cURL:="http://www.simjcloud.com/testing/leafle ... index.html"
local oServer:=nil

oServer := CreateObject( "MSXML2.XMLHTTP")

oServer:Open( "POST", cURL, .F. )
oServer:SetRequestHeader( "Content-Type" , "application/json" )
oServer:SetRequestHeader( "latfrom","37.899926")
oServer:SetRequestHeader( "lngfrom","-4.731114")
oServer:SetRequestHeader( "latto","37.587115")
oServer:SetRequestHeader( "lngto","-4.639551")
// oServer:SetRequestHeader( "ClientAPI_ID" , ::cID )
// oServer:SetRequestHeader( "ClientAPI_Key", ::cKey )

//oServer:SetRequestBody( cBody )

oServer:Send( cURL )
MSGINFO(oServer:readyState)
DO WHILE oServer:readyState <> 2
SYSWAIT()
ENDDO
MSGINFO(oServer:readyState)

msginfo(oServer:responseText)

return
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Quien me ayuda...Adquirir datos de respuesta de una web

Post by Antonio Linares »

No se si este código pueda servirte:

http://forums.fivetechsupport.com/viewt ... 58#p184458
regards, saludos

Antonio Linares
www.fivetechsoft.com
softruz
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Re: Quien me ayuda...Adquirir datos de respuesta de una web

Post by softruz »

Gracias Antonio, lo prueba ahora mismo y te digo
softruz
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Re: Quien me ayuda...Adquirir datos de respuesta de una web

Post by softruz »

donde puedo encontrar la clase TIPClientHTTP? no la tengo, yo uso FWH0901
softruz
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Re: Quien me ayuda...Adquirir datos de respuesta de una web

Post by softruz »

¿Alquien me puede dar una solucion a este problema?

Gracias.
softruz
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Re: Quien me ayuda...Adquirir datos de respuesta de una web

Post by softruz »

Gracias, ya he podido compilar, pero me sigue sin funcionar no me devuelve nada de los datos, la cuestion sería un código que se esperar a la respuesta de la web y entonces recoger los datos.

¿Alguien tiene la solucion?

Mil Gracias
softruz
Posts: 485
Joined: Fri Feb 09, 2007 10:34 am

Re: Quien me ayuda...Adquirir datos de respuesta de una web

Post by softruz »

Ya he encontrado la solucion.
function getresulthtml()
local oIE:=nil,cURL:="",j:=0
local cBody:="",cTextoTXT:="",cTextoHTML:="",aElement:={}
oIE := CREATEOBJECT( "InternetExplorer.Application" )
WITH OBJECT oIE
:Visible := .f.
:ToolBar := .f.
:StatusBar := .f.
:MenuBar := .f.
:FullScreen := .f.
:Left:=150
:Top:=150
END WITH
oIE:Navigate2("http://www.simjcloud.com/testing/leafle ... =-4.639551")
do While oIE:busy
SysRefresh()
enddo


cTextoHTML:=oIE:Document:body:innerHTML()
while upper(alltrim(cTextoHTML))==alltrim(upper(oIE:Document:body:innerHTML()))
SysRefresh()
end while
cTextoHTML:=oIE:Document:body:innerHTML()

msginfo(cTextoHTML)
return
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: Quien me ayuda...Adquirir datos de respuesta de una web

Post by Antonio Linares »

muy bien

gracias por compartirla
regards, saludos

Antonio Linares
www.fivetechsoft.com
ADutheil
Posts: 352
Joined: Sun May 31, 2009 6:25 pm
Location: Salvador - Bahia - Brazil

Re: Quien me ayuda...Adquirir datos de respuesta de una web

Post by ADutheil »

What is the purpose of these lines?
softruz wrote: while upper(alltrim(cTextoHTML))==alltrim(upper(oIE:Document:body:innerHTML()))
SysRefresh()
end while
return
I'd add oIE:quit() after cTextoHTML:=oIE:Document:body:innerHTML() to free memory and avoid leaving hidden IE instances.
Regards,

André Dutheil
FWH 13.04 HB 3.2 BCC 5.82 MinGW 4.5.2 MSVS 10
Post Reply