Hewitt 14 Denunciar post Postado Maio 25, 2016 Galra, boa madrugada; Estou com o seguinte código: <? //URL DO SITE A SER CAPTURADO $url = 'http://www.globo.com/'; //PEGAR TODO CÓDIGO HTML PARA UMA VARIAVEL STRING $site = file_get_contents($url); //PEGAR COTAÇÃO ... PEGUEI O INICIO NA PRIMEIRA LINHA E O FIM DO CAMPO, ENTRE ELES FICA O VALOR QUE EU QUERO $cotacao1 = explode('<span class="dolar">', $site); $cotacao2 = explode('</span>', $cotacao1[1]); $cotacao = $cotacao2[0]; var_dump ($cotacao); ?> A string aparece zerada!! Estou fazendo algo errado? Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Maio 25, 2016 Prefira CURL. Aqui tem sua solução: http://forum.imasters.com.br/topic/406783-resolvidoobter-conteudo-de-outro-site-com-curl/ Compartilhar este post Link para o post Compartilhar em outros sites
Hewitt 14 Denunciar post Postado Maio 25, 2016 Prefira CURL. Aqui tem sua solução: http://forum.imasters.com.br/topic/406783-resolvidoobter-conteudo-de-outro-site-com-curl/ Fiz o seguinte, mas só retorna NULL! =/ <? libxml_use_internal_errors(true); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://www.globo.com/"); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FILETIME, true); $output = curl_exec($ch);// acessar URL $response_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);// Pegar o código de resposta if ($response_code == '404') { echo 'Página não existente'; } else { //echo $output; $doc = new DOMDocument(); $doc->formatOutput = true; $doc->loadHTML($output); $xpath = new DOMXpath($doc); $elemento = $xpath->query( "//span[@id='dolar']" )->item( 0 )->nodeValue; var_dump ($elemento); }//end else ?> Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Maio 25, 2016 Recomendo estudar o manual. http://fr.php.net/manual/pt_BR/class.domelement.php Compartilhar este post Link para o post Compartilhar em outros sites
Hewitt 14 Denunciar post Postado Maio 25, 2016 Dei uma lida no manual, e com o link anterior estava com um erro bobo, mas resolvi facilitar primeiro. <? libxml_use_internal_errors(true); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://www.dolarhoje.com/"); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FILETIME, true); $output = curl_exec($ch);// acessar URL $response_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);// Pegar o código de resposta if ($response_code == '404') { echo 'Página não existente'; } else { //echo $output; $doc = new DOMDocument(); $doc->formatOutput = true; $doc->loadHTML($output); $xpath = new DOMXpath($doc); $elemento = $xpath->query( "//input[@id='nacional']" )->item( 0 )->nodeValue; var_dump ($elemento); }//end else ?> Ele retorna com "string (0)".. O caminho está certinho. Alguém pode me dar uma luz?? Compartilhar este post Link para o post Compartilhar em outros sites
LandersonAlmeida 31 Denunciar post Postado Maio 25, 2016 <input type="text" id="nacional" value="3,56"/></span> O valor do real está no atributo value, neste caso: $elemento = $xpath->query("//input[@id='nacional']")->item(0)->getAttribute('value'); Compartilhar este post Link para o post Compartilhar em outros sites
Hewitt 14 Denunciar post Postado Maio 25, 2016 <input type="text" id="nacional" value="3,56"/></span> O valor do real está no atributo value, neste caso: $elemento = $xpath->query("//input[@id='nacional']")->item(0)->getAttribute('value'); Hummm, agooora entendi! Muito obrigado Landerson! Para quem quiser, ficou assim: PEGAR COTAÇÃO DÓLAR - (www.dolarhoje.com) <? libxml_use_internal_errors(true); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, "http://www.dolarhoje.com/"); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FILETIME, true); $output = curl_exec($ch);// acessar URL $response_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);// Pegar o código de resposta if ($response_code == '404') { echo 'Página não existente'; } else { //echo $output; $doc = new DOMDocument(); $doc->formatOutput = true; $doc->loadHTML($output); $xpath = new DOMXpath($doc); $elemento = $xpath->query( "//input[@id='nacional']" )->item( 0 )->getAttribute('value');; echo $elemento; }//end else ?> Compartilhar este post Link para o post Compartilhar em outros sites