Возможно ли отфильтровать закачиваемые файлы (как вариант, не грузить файлы, чей размер меньше опр. значения)?
как пример
<?php
foreach (range(110001, 110005) as $topic) {
$doc = new DOMDocument;
$doc->loadHtml(file_get_contents("http://somesite.org/forum/viewtopic.php?t=$topic"));
$vars = $doc->getElementsByTagName("var");
$n = 0;
for ($i = 0; $i < $vars->length; $i++) {
$var = $vars->item($i);
$class = $var->attributes->getNamedItem('class')->textContent;
if (strpos($class, 'postImg') !== false) {
$img = $var->attributes->getNamedItem('title')->textContent;
$ext = pathinfo($img, PATHINFO_EXTENSION);
file_put_contents("{$topic}_{$n}.{$ext}", file_get_contents($img));
$n++;
}
}
}
В примере выдергиваются все картинки, находящиеся в теге var. Как их еще отфильтровать по размеру? Скажем, что бы качались только картинки, чей размер не менее 800x600 px.
И еще вопрос. В языках не силен, но интересно. Если картинка )другой файл) не встроена в сайт, а есть лишь линк на внешний сайт, то как тогда ее подцепить? getElementsByTagName(«a») как-то вообще не работает, хотя url есть линк на страницу с картинкой. Вернее понятно, что он не отработает, но как привязать внешнюю страницу к такой конструкции, если url такой внешней страницы указывается в стартовой страничке, которая меняется при цикле. Что бы уже на внешней страничке устроить подобные действия и оттуда стащить изображение (оно там может быть на fastpic etc)