- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Привлю запрос в php скрипте.
Уже вторые сутки пытаю понять почему не работает.
Есть на html страничке кусок кода:
Скрипт ищет его на страничке:
Вся проблема в том, что поиск идет до первого div'a. Но это не есть айс.
Выход нашел - надо искать до "</td>
Но как только я ставлю код:
Возникает ошибка.
Посоветуйте как грамотно организовать шаблон запроса.
Уже вторые сутки пытаю понять почему не работает.
ИМХО, кавычки мешают. Нужно преобразовывать в \" (ну и остальные служ. символы тоже)
$pos1 = strpos($res, "<div id='news-id-");
$pos2 = strpos($res, '</td>', $pos1);
Если найти надо
<div id="news-id-7..3">
<div align="center"><!--TBegin--><a href="" onclick="return hs.expand(this)"><img ...></a><!--TEnd--></div></div><p></p>
</td>
в первом диве -
то "/news-id-\d\.\.\d/\"><div[^>]+>(.*)<\/div - как-то так
jumash добавил 23.04.2009 в 14:20
В общем уточните что вам именно надо найти)
Вот что надо найти:
От "<div id="news-id-773">"
До "</td>"
Причем между ними может много всякого разного html кода.
preg_match_all("!<div id=\'news-id-(.*?)\'>(.*?)</td>!si", $о1, $res);
$id=$o1[1][0];
$html=$o1[2][0];
вроде так...
dmitcat Спасибо большое!
Поиск проходит успешно, но дальше идут косяки.
Дальше надо взять Id новости и заголовок.
Вот код.
preg_match_all("!<div id=\'news-id-(.*?)\'>(.*?)</td>!si", $m1, $qwe);
for ($wer=0;$wer<count($qwe[1]);$wer++)
{
//echo $wer;
if (preg_match("|<div id='news-id-(.+)'>.+</div>|mi",$qwe[1][$wer],$ert))
{
echo "<tr><td>Номер новости - ".$ert[1]."<br>\n";
$tyu = parse_url($nm);
$yui = "|".$ert[1]."-(.+).html|iU";
preg_match($yui,$m1,$uio);
$iop = "http://".$tyu["host"]."/".$uio[0];
echo "Ссылка на новость - ".$iop."<br>";
//echo $qwe[0][$wer]."<br>";
file_put_contents("log/".$ert[1].".html",$qwe[0][$wer]);
$opa = abc($iop);
preg_match_all("!<div id=\'news-id-(.*?)\'>(.*?)</td>!si", $opa, $pas);
for ($asd=0;$asd<count($pas[1]);$asd++)
{
preg_match("|<title>(.+)».+</title>|iU",$opa,$rty);
file_put_contents("log/".$ert[1]."-full.html",$pas[0][$asd]);
echo "Заголовок новости! - ".$rty[1]."<br>";
}
Самое что интересное с
Шаблоном
Все функционирует ( но я говорил что он не подходит)
Что я не так делаю?
для начала научитесь писать удобочитаемый код. глядя на названия переменных и изобилие комментариев, даже разбираться неохота что там не так.
К сожалению я лишь взял данный код, чтобы подправить под свои нужны. Я не php программист, иначе бы не спрашивал :(
Самому пришлось разбираться во всем этом коде
что то кусок кода не совсем понятный - он не полный. не ясны назначения и содержания переменных ert, nm...
да и полный пример странички по которой поиск идет - не помешал бы...
+ указания, что данный скрипт должен найти и в каком виде