Hola gente, quiero automatizar un proceso, pero la verdad el servidor no me responde bien a la peticion que hago con curl, al ingresar a
www.mercadopublico.cl y buscar por ejemplo medicamentos se realiza la siguiente peticion POST:
Código:
POST /sitebuscadorFast/SearchAcquisition/SearchAcquisition/ navegador=&navsDisabled=®ion=&estado=&monto=&tipolicitacion=&tipofecha=&fechadesde=&fechahasta=&sortFieldBefore=fechacierre&Parameters.SortField=%2Bestadoorder%2Bfechacierre&Parameters.SortDirection=&Parameters.NavigatorAction=0&Parameters.Offset=0&hiddenBusqueda=medicamentos&permalink=&executeSearchOnLoad=false&toggleAdvanced=False&tipobusqueda=simple&urlShortenAction=%2FsitebuscadorFast%2FSearchAcquisition%2FGetShortenUrl%2F&urlBusqueda=%2FsitebuscadorFast%2FSearchAcquisition%2FSearchAcquisition%2F&busqueda=medicamentos&Todos=false&Comprador=&Proveedor=&Rubros=&ddlRegiones=&ddlEstados=&ddlMontos=&ddlTiposLic=&ddlTiposFecha=&dCompradores=&dProveedores=&dRubros=
las cabezaras que retorna son las siguientes:
Código:
https://www.mercadopublico.cl/sitebuscadorFast/SearchAcquisition/SearchAcquisition/
POST /sitebuscadorFast/SearchAcquisition/SearchAcquisition/ HTTP/1.1
Host: www.mercadopublico.cl
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:15.0) Gecko/20100101 Firefox/15.0.1
Accept: application/json, text/javascript, */*; q=0.01
Accept-Language: es-es,es;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
DNT: 1
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Referer: https://www.mercadopublico.cl/sitebuscadorFast/SearchAcquisition/SearchAcquisitionByUrl?navegador=&busqueda=medicamentos&model={+Todos+%3afalse%2c+Comprador+%3a%27%27%2c+Proveedor+%3a+%27%27%2c+Rubros+%3a%27%27%2c+Region+%3a%27%27%2c+Estado+%3a%27%27%2c+Monto+%3a%27%27%2c+TipoLicitacion+%3a%27%27%2c+TipoFecha+%3a%27%27%2c+FechaDesde+%3a%27%27%2c+FechaHasta+%3a%27%27}¶meters={%20SortField%20:%20%27+estadoorder+fechacierre%27%20,%20SortDirection%20:%20%27%27%20,%20Offset%20:0,%20NavigatorAction%20:0}&navsDisabled=
Content-Length: 673
Pragma: no-cache
Cache-Control: no-cache
navegador=&navsDisabled=®ion=&estado=&monto=&tipolicitacion=&tipofecha=&fechadesde=&fechahasta=&sortFieldBefore=fechacierre&Parameters.SortField=%2Bestadoorder%2Bfechacierre&Parameters.SortDirection=&Parameters.NavigatorAction=0&Parameters.Offset=0&hiddenBusqueda=medicamentos&permalink=&executeSearchOnLoad=false&toggleAdvanced=False&tipobusqueda=simple&urlShortenAction=%2FsitebuscadorFast%2FSearchAcquisition%2FGetShortenUrl%2F&urlBusqueda=%2FsitebuscadorFast%2FSearchAcquisition%2FSearchAcquisition%2F&busqueda=medicamentos&Todos=false&Comprador=&Proveedor=&Rubros=&ddlRegiones=&ddlEstados=&ddlMontos=&ddlTiposLic=&ddlTiposFecha=&dCompradores=&dProveedores=&dRubros=
HTTP/1.1 200 OK
Cache-Control: private
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/7.5
X-AspNetMvc-Version: 3.0
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Sat, 11 May 2013 02:30:01 GMT
Content-Length: 127865
y mi script:
Código PHP:
$fields_strings = "navegador=&navsDisabled=®ion=&estado=&monto=&tipolicitacion=&tipofecha=&fechadesde=&fechahasta=&sortFieldBefore=fechacierre&Parameters.SortField=%2Bestadoorder%2Bfechacierre&Parameters.SortDirection=&Parameters.NavigatorAction=0&Parameters.Offset=0&hiddenBusqueda=medicamentos&permalink=&executeSearchOnLoad=false&toggleAdvanced=False&tipobusqueda=simple&urlShortenAction=%2FsitebuscadorFast%2FSearchAcquisition%2FGetShortenUrl%2F&urlBusqueda=%2FsitebuscadorFast%2FSearchAcquisition%2FSearchAcquisition%2F&busqueda=medicamentos&Todos=false&Comprador=&Proveedor=&Rubros=&ddlRegiones=&ddlEstados=&ddlMontos=&ddlTiposLic=&ddlTiposFecha=&dCompradores=&dProveedores=&dRubros=";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.mercadopublico.cl/sitebuscadorFast/SearchAcquisition/SearchAcquisition/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_POST, true);
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);
$data = curl_exec($ch);
curl_close($ch);
resulta que me retorna un json con informacion no relacionada a los resultados de la busqueda.
alguien me ayuda?
gracias.