Parser, który pozwala na pobranie listy przedsiębiorców telekomunikacyjnych z bazy UKE, korzystając z wyszukiwarki http://www.uke.gov.pl/marta/searcherRptForm.vm.
<?php
// Michał Błaszczak
// blaszczakm.blogspot.com
function uke($id)
{
$data =
file_get_contents("http://www.uke.gov.pl/marta/resultRptDetails.vm?form=1&id=$id");
$dom = new domDocument;
@$html = @$dom->loadHTML($data);
$dom->preserveWhiteSpace = false;
$tables = $dom->getElementsByTagName('table');
$rows = $tables->item(0)->getElementsByTagName('tr');
$dane='';
foreach ($rows as $row)
{
$cols = $row->getElementsByTagName('td');
$intro = $cols->item(0)->nodeValue;
$t = explode("\n",$intro);
$dane .= trim($t[1]);
$dane .=';';
}
system("echo '$dane' >> uke.csv");
}
for($i=1;$i<1000;$i++) // pierwszy 1000
{
uke($i);
}
?>
Na sam koniec dla ładnego wyniku
iconv --from-code=UTF-8 --to-code=ISO-8859-2 --output uke1.csv uke.csv
W pliku uke1.csv dostaniemy pierwszy tysiąc operatorów telekomunikacyjnych.