web scraping usando php e curl de trás do proxy corporativo / firewall

0

Estou por trás de um proxy / firewall corporativo. Eu quero extrair informações de outro site e estou tentando fazer isso usando php e curl.

Meu script é o seguinte:

===================== início do script ================

$ url="www.guptaed.com"; $ proxy_ip="12.34.56.78"; // ip mudou de proxy de empresa real $ proxy_port="81"; $ proxy_user_pass="meu_nome_do_usuário: minha_password"; // usuário e passe alterado

$ ch = curl_init (); curl_setopt ($ ch, CURLOPT_URL, $ url); curl_setopt ($ ch, CURLOPT_FRESH_CONNECT, 1); curl_setopt ($ ch, CURLOPT_TIMEOUT_MS, 5000); curl_setopt ($ ch, CURLOPT_PROXYTYPE, 'HTTP'); curl_setopt ($ ch, CURLOPT_PROXY, $ proxy_ip); curl_setopt ($ ch, CURLOPT_PROXYPORT, $ proxy_port); curl_setopt ($ ch, CURLOPT_PROXYUSERPWD, $ proxy_user_pass);

$ data = curl_exec ($ ch); curl_close ($ ch); echo $ data;

===================== fim do script ================

E o seguinte é exibido na tela quando eu chamo este script (através de um servidor Apache instalado localmente):

===================== início da saída ================

Encontrado

O documento foi movido para cá.

1

===================== fim da saída ================

"aqui" na frase acima é um link com a url como: " link "

Qualquer ajuda será apreciada.

Obrigado! Ashish

    
por guptaed 06.09.2016 / 03:18

1 resposta

0

O URL de destino retornou um código de resposta HTTP 302, usado para redirecioná-lo para outro URL. É por isso que você obtém o resultado "Encontrado" com outro URL.

Tente configurar o curl para seguir os redirecionamentos:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    
por 08.09.2016 / 10:15