Zood
Создатель
- Регистрация
- 18 Июн 2008
- Сообщения
- 35
- Реакции
- 0
- Автор темы
- #1
пробую для себя написать универсальный парсер сайтов.
Который парсит согласно регулярному выражению пачку юрлов и сохраняем результат в файл...
Возник трабел с распознанием utf-8, победить кракозябры не могу даже с iconv
вообщем хелп ми :bc:
Который парсит согласно регулярному выражению пачку юрлов и сохраняем результат в файл...
Возник трабел с распознанием utf-8, победить кракозябры не могу даже с iconv
вообщем хелп ми :bc:
PHP:
<?
///////////// * CONFING *///////////////
$log="";
$pass="";
$dir="";
$fname="site-parser.csv";
$ftp="ftp://$log:$pass@ftp.site.host.ru/$dir/$fname";
$fcontent='';
?>
<html>
<body>
<form action="" method="POST">
<textarea cols="70" rows="15" name="url"></textarea>
<br />
<br />
<input type="text" name="reg" size="50">
<br />
<br />
<input type="submit" value="отправить">
</form>
</body>
</html>
<?
if($_POST[url]){
$treg=trim($_POST[reg]);
$reg="#$treg#i";
echo'<br>'.$reg.'<br>';
$ar_url=explode("\r\n",$_POST[url]);
//print_r($ar_url);
foreach($ar_url as $line => $key){
$f=file_get_contents($key);
if(!strpos("#charset=utf-8#i",$f)){
preg_match_all($reg,$f,$match_ar);
$res_ar[]=array($key,$match_ar);
}
else{
preg_match_all($reg,iconv("UTF-8", "windows-1251",$f),$match_ar);
$res_ar[]=array($key,$match_ar);
}
}
}
//print_r($res_ar);
/*if ($handle=fopen($ftp,"w")) {
echo "Не могу открыть файл ($fname)";
exit;}*/
//echo'<br />====================<br />';
foreach($res_ar as $line => $key){
foreach($key as $line2 => $key2){
if(is_array($key2))
{
foreach($key2[0] as $line3 => $key3){
//echo$key3.'<br />';
$fcontent.=($line+1)."\t".$res_url.trim($key3)."\t".$key2[1][$line3]."\r\n";
}
}
else
{
$res_url=$key2."\t";
}
}
}
echo'<textarea cols="90" rows="20">'.$fcontent."</textarea><br />";
echo'<textarea cols="90" rows="20">';
print_r($res_ar);
echo'</textarea><br />';
/*
if (fwrite($handle,$fcontent)=== FALSE) {
echo "Не могу произвести запись в файл ($fname)";
exit;}
*/
?>