使用报表查看器中的PHP和CURL进行刮擦

时间:2017-07-02 03:37:56

标签: php asp.net curl

我想处理使用报表查看器的页面中的数据,而我的CURL代码找不到此查看器中的数据。

Page URL

该网页属于此网站:fiscalizandocomtce

<?php
   $curl = curl_init("http://reportviewer.tce.mg.gov.br/default.aspx?server=noruega&relatorio=SICOM_Consulta%2f2017%2fModulo_AM%2fDetalhamentos%2fUC31-DetContratos-RL&contrato=8678102&periodoSelecionado=0&remessaSelecionada=662325639,668743165,674898703,675479698,682749064,682749296,682752194,684843149,687617053,689543045,689556683,689827842,690502542&orgaoSelecionado=11938&exercicioSelecionado=2017");
   curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);

   $page = curl_exec($curl);

   if(curl_errno($curl)) // check for execution errors
   {
      echo 'Scraper error: ' . curl_error($curl);
      exit;
   }

   echo $page;
?>

我也尝试过使用simple_html_dom,但它也无法从相关网页的报告查看器中捕获数据。

<?php

include('simple_html_dom.php');

$html = file_get_html('http://reportviewer.tce.mg.gov.br/default.aspx?server=noruega&relatorio=SICOM_Consulta%2f2017%2fModulo_AM%2fDetalhamentos%2fUC31-DetContratos-RL&contrato=8678102&periodoSelecionado=0&remessaSelecionada=662325639,668743165,674898703,675479698,682749064,682749296,682752194,684843149,687617053,689543045,689556683,689827842,690502542&orgaoSelecionado=11938&exercicioSelecionado=2017');

// extract text from HTML
echo $html->plaintext;
?>

除了我提到的两个之外,还有其他办法吗? 谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

首先检查网址是否在浏览器中打开。 其次是file_get_contents 并且您可以使用PHP的DOMDocument类来遍历HTML文档并刮取所需的数据