psishock: ну как вариант:
но для определения какой-нибудь экзотики, типа тач айконов в айпадах и т.д. не помешает так же и анализировать content-type при запросе иконки по выделенному урлу (там может быть просто что-то типа <link ... href="/screen-type-favicon.php"). Здесь просто общий случай с регулярками.
Хмм...не сталкивался с тач айконами в нете. А вдруг за ними будущее? Анализ в каком месте кода лучше делать?
И еще нашел несколько волшебных сайтов. Фавиконовских линков не видно на них. Хотя иконка на месте. Видно в стилях как-то спрятали. (i.e mmk.ru's favicon)
это демка в общих чертах, спайдер и директории переделываются под твой случай, так же, если парсить нужно не только favicon, то имхо, лучше использовать DOM, вместо регулярок
Спасибо тебе огромное.
я тоже смотрел в сторону курлов.
А если иконка в .png будет как в примере выше. А мы ее в .ico запишем
Спасибо всем за многочисленные ответы, постараюсь вникнуть.
Начал переговоры с хостером. Он говорит, что не даст больше 200 писем в час отправлять. А у меня база многотысячная. Как быть? Очередь отправки у него не предусмотрена. Придется как-то изворачиваться самому. Выбирать каждую минуту не более 3 мыла. Так стопорится бизнес. Все в этой стране через...постель.
Хотя вопрос немного не про это чуток. Я спрашивал про смысл всего этого. Ведь в DLE уже присоединяется ajax библиотека может там есть подобные функции и мне не надо будет траффик гонять лишний раз. Вот про что я.
ну как вариант:
но для определения какой-нибудь экзотики, типа тач айконов в айпадах и т.д. не помешает так же и анализировать content-type при запросе иконки по выделенному урлу (там может быть просто что-то типа <link ... href="/screen-type-favicon.php"). Здесь просто общий случай с регулярками.
Хмм...не сталкивался с тач айконами в нете. А вдруг за ними будущее? Анализ в каком месте кода лучше делать?
И еще нашел несколько волшебных сайтов. Фавиконовских линков не видно на них. Хотя иконка на месте. Видно в стилях как-то спрятали. (i.e mmk.ru's favicon)
Я ничего не придумал кроме как такого
try {
$page = get($url);
if (preg_match('#(<link.*icon\W.*?>)#Ui', $page, $m)) {
if (preg_match('#href=(.+)\s#Ui', $m[1], $m)) {
$raw_favicon_url = trim(str_replace(array('\'', '"'), '', $m[1])); # удаляем кавычки
if (strpos($raw_favicon_url, 'http://') === 0) {
$favicon_url = $raw_favicon_url;
} else {
$favicon_url = sprintf('http://%s/%s', $host, $raw_favicon_url);
}
}
} else {
$favicon_url = "http://www.google.com/s2/favicons?domain='.$host.'"; # для дюже спрятанных
}
# проверочка на картинность
$page = get($favicon_url);
if (preg_match("#Content-Type: ([^\"';\s]+);?#is", $page, $m)) {
if (preg_match('#image(.+)\s#Ui', $m[1], $m)) {
echo "картинка";
}else{echo "неведомы зверушки";}
}
Так али как?
дополнительные поля читай в мануалах движка. Для тегов стоит чуток изменить код.
например как-то так:
запускать так php script.php domain.txt favicon_dir
содержимое domains.txt:
это демка в общих чертах, спайдер и директории переделываются под твой случай, так же, если парсить нужно не только favicon, то имхо, лучше использовать DOM, вместо регулярок
Спасибо тебе огромное.
я тоже смотрел в сторону курлов.
А если иконка в .png будет как в примере выше. А мы ее в .ico запишем
file_put_contents($argv[2] . "/$host.ico", get($favicon_url));
Это нормально будет? Проканает? Или надо и расширение выделять и сохранять?
За последний месяц замечаю активные телодвижения яндекса. Или просто меня отряхнули от песка?
Страниц в поиске было до 10, а тут вдруг задернули до тысячи. Я, как непривычный - в недоумении.
Наверное трояном слизали wcx_ftp.ini в тотале. Не сохраняйте пароли, лучше сразу скажите их мне. ))
Ну вы даете! Весь ваш сайт у них в руках. Поздравляю! Как можно пароли сохранять где либо?
Лень и жадность убьет человечество, это точно.
можно еще поменять называния get команд и значений переменных do в engine.php и названия ключевых файлов. Иногда помогает уход от стандартов. ))
http://dle-news.ru/tips/1164-zaschita-papok-skripta-ot-zapuska-storonnih-skriptov.html
Спасибо всем за многочисленные ответы, постараюсь вникнуть.
Начал переговоры с хостером. Он говорит, что не даст больше 200 писем в час отправлять. А у меня база многотысячная. Как быть? Очередь отправки у него не предусмотрена. Придется как-то изворачиваться самому. Выбирать каждую минуту не более 3 мыла. Так стопорится бизнес. Все в этой стране через...постель.
А так сразу не проще?
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
Хотя вопрос немного не про это чуток. Я спрашивал про смысл всего этого. Ведь в DLE уже присоединяется ajax библиотека может там есть подобные функции и мне не надо будет траффик гонять лишний раз. Вот про что я.