Css Downloader - Загрузка изображений из css

nexusapeiron

Новичок
Репутация
0 / 70
CSS Downloader for Ikariam.

По мере написания проекта возникла необходимость скачивать с серверов Gameforge последние версии скинов для Икариама.
Если скачать css файлы не составляет труда, то файлов изображений достаточно много.
К примеру один только стиль common.css содержит около 430 различных картинок.
И чтобы каждый раз скачивать их в ручную возникла идея написания небольшой программки.
Работа программы проста:
- Добавляете в список файлы css стилей,
- указываете адрес сервера (папки скинов, где лежали эти стили),
и программа пробегая по файлам загружает изображения, указанные в этих стилях.
Набросал на скорую руку, но вроде бы ошибок не замечено.

P.S. Вполне возможно может пригодиться и не только для Икариам. Если бы был полный список css файлов можно было бы автоматизировать и их загрузку с серверов Gameforge.

Версия 0.0.1.101
Css Downloader v.0.0.1.101 (Deposit Files)

Версия 0.0.1.111
- Дублирующиеся изображения загружаются один раз
- Некоторые оптимизации потоков
Css Downloader v.0.0.1.111 (Deposit Files)

Версия 0.0.1.131
- Добавление css стилей целой папкой
Css Downloader v.0.0.1.131 (Deposit Files)
 
Я так понял под игру будет новый свн, вы его не указали, поэтому я пока не соображу куда применять стили игры.
 
посмотрим программу может будет штука нормальна для скачки рисунков
 
css там куча, по одному файлу добавлять в очередь тяжко, нельзя ли сделать чтоб можно было выбрать папку в которой находятся css?
п.с. Вот каму нуна css файлы http://narod.ru/disk/5642341001/css.rar.html
 
Если у кого то осталась программа, перезалейте пожалуйста.

Ждать надоело, написал сам:
Код:
<?php
$wayToCss   = './skins/';      // Путь к папке с css файлами (Ну или URL)
$wayToImage = './skins/';    // Путь к папке, в которой находятся картинки
$wayToSite  = '[url]http://uni19.ogame.ru/game/';[/url]  // Путь к серверу с картинками

$array = array('01style.css','bbcodes.css','changelog.css','defense.css','empire.css',
'eventList.css','exodus.css','fleet.css','galaxy.css','iefixes.css',
'jquery.cluetip.css','movement.css','network.css','noscript.css',
'research.css','resources.css','shipyard.css','station.css',
'statistics.css','techtree.css','thickbox.css','toolbox.css',
'tooltip.css','trader.css','tutorial.css');  // Массив файлов CSS
for($i=0;$i<=(count($array)-1);$i++){
    $css = $wayToCss . $array[$i];
    if(file_exists($css)){
        print 'view ' . $css . '
';
        $f = file_get_contents($css);
        preg_match_all('/url[(].*?[)]/',$f,$p[$i]);
        for($j=0;$j<=(count($p[$i][0])-1);$j++){
            $file = $wayToImage . str_replace('url(','',str_replace(')','',$p[$i][0][$j]));
            $isExists = ' <font color="red">NO</font> [img]' . $wayToSite . str_replace('url(','',str_replace(')','',$p[$i][0][$j])) . '[/img]';
            if(file_exists($file)){
                $isExists = ' <font color="green">ОК</font>';
            }
            print $file . $isExists . '
';
        }
    }
    else{
        print 'error reading ' . $css . '
';
    }
}
?>

Небольшое пояснение к скрипту:
Если картинки указаны как img/.../img.jpg, а глобальный путь http://url.ru/test/img/.../img.jpg, то нужно указывать $wayToSite = '
Тоже самое с путём у Вас на диске, если все картинки лежат в папках ./template/img/... то нужно указать $wayToImage = './template/';

Скрипт не копирует, а выводит на страницу все, не имеющиеся у вас картинки. Если кого-то интересует - допишу и загрузку массива *.css файлов из директории и копирование.
 
Пожалуйста перезалейте программу очень нужна
 
Сверху