нубу подскажите, по скрипту простому)

php_curl O_O либо я вас не понял
ЗЫ '#(.*?)#' не правильно, вопрос здесь лишний, т.е '#(.*)#'
 
php_curl O_O либо я вас не понял
ЗЫ '#(.*?)#' не правильно, вопрос здесь лишний, т.е '#(.*)#'
так тоже пробовал preg_match('#(.*)#', $res, $m);
не парсит... точнее часть статей парсит, а у некоторых только первую строчку парсит и все :(

Добавлено через 2 минуты
скрипт примерно такой:

PHP:
<?php
set_time_limit(0);
$h = fopen("nomer-statya.log","a+");
while(!feof($h))// бесконечный цикл
   {
   sleep(1);//задержка
$i=fgets($h, 1024); 
echo $i;
$res = file_get_contents("http://site.com/ddfs/dts".$i."&fskd");


	
// jjj
preg_match('#(.*)#', $res, $m);

$artefak = (isset($m[1])) ? $m[1]."\r\n" : '';

if($artefak) {$fp = fopen('1dasda11.log','a');fwrite($fp, $artefak."\r\n\r\n\r\n________________________\r\n");}
   }
echo $i;
sleep(1);



?>
 
здесь можно без регулярок. текст страницы назначается в переменную, которая затем дописывается в файл

PHP:
<?php
set_time_limit(0);
$h = file("nomer-statya.log");

foreach ($h as $i):
sleep(1);//задержка
$res = file_get_contents("http://site.com/ddfs/dts".$i."&fskd");
if(strlen($res)>10) { echo $i; file_put_contents('1dasda11.log',$res."\r\n\r\n\r\n________________________\r\n",FILE_APPEND); } // если страница > 10 симв. - дозапись
endforeach;

echo $i;
sleep(1);
?>
 
  • Нравится
Реакции: doxx
pitkina спасибо, я б не додумался, буду пробовать..

а можно ли сделать чтобы хтмл код вырезался? т.е. чтобы один текст сохранялся
 
как вариант, если заменить
Код:
$res = file_get_contents("http://site.com/ddfs/dts".$i."&fskd");
на
PHP:
$res = strip_tags(html_entity_decode(file_get_contents("http://site.com/ddfs/dts".$i."&fskd")));
скрипт удалит все теги

или же для вырезания только текста статьи треб. регулярка
 
  • Нравится
Реакции: doxx
как вариант, если заменить
Код:
$res = file_get_contents("http://site.com/ddfs/dts".$i."&fskd");
на
PHP:
$res = strip_tags(html_entity_decode(file_get_contents("http://site.com/ddfs/dts".$i."&fskd")));
скрипт удалит все теги
или же для вырезания только текста статьи треб. регулярка
спасибо, но в итоге, как у меня и раньше было,если с вырезанием всех тего - парсится только начало статьи, странно... либо заголовок, либо вообще не парсится..
если с хтмл кодами парсить, то все парсится..
 
народ, еще вопрос, скрипт парсит 2 значение со страницы и пишет в файл:

Код:
$m = array();
preg_match_all('#id=(.*?)&#', $res, $m);   print_r($m[1]);
preg_match_all('#act(.*?)u#', $res, $m2); 

$ggg = (isset($m[1])) ? $m[1]."\r\n" : '';
$ggg1 = (isset($m2[1])) ? $m2[1]."\r\n" : '';
foreach ($m[1] as &$ggg)
foreach ($m2[1] as &$ggg1)
 {
$fp = fopen('111.log','a'); 
fputs($fp,$ggg1. " ".$ggg. " \r\n");}
echo $i;}
сейчас так, парсит и пишет только последнее значение
(preg_match_all('#action=(.*?)N#', $res, $m2); )

Как сделать, чтобы вторая регулярка (preg_match_all('#act(.*?)u#', $res, $m2);)
не писала значение в файл, а писало количество раз, которое нашла на странице..

т.е. скажем на странице "act=111=u" повторяется 5 раз,соответственно в файл пишется цифра пять, а не значение которое спарсилось в регулярке..
 
(preg_match_all('#act(.*?)u#', $res, $m2);)
не писала значение в файл, а писало количество раз, которое нашла на странице..
т.е. скажем на странице "act=111=u" повторяется 5 раз,соответственно в файл пишется цифра пять, а не значение которое спарсилось в регулярке..
Может попробовать sizeof
file_put_content('txt',sizeof($m2)-1) ?
Также может пригодиться, если что то не пашет добавление флагов в регулярку "#act(.*?)u#ius"
 
народ, из-за чего такая ошибка может возникать?
PHP:
<b>Warning</b>:  file_get_contents(http://site.ry) [<a href='function.file-get-contents'>functi
on.file-get-contents</a>]: failed to open stream: HTTP request failed! HTTP/1.0
404 Not Found
 in <b>C:\WebServers\usr\bin\l.php</b> on line <b>8</b><br />
<script language=JavaScript src='/denwer/errors/phperror_js.php'></script>
простейший парсер ( жж ), по прегмат парсит и сохраняет в файл, погуглил ничего внятного не нашел..
на восьмой строке :
$rs = file_get_contents('http://'.$i.'.сайт.ry/?mode);
 
Назад
Сверху