За последние 24 часа нас посетил 59141 программист и 1810 роботов. Сейчас ищут 2327 программистов ...

Грабилка шаблонов

Тема в разделе "Прочие вопросы по PHP", создана пользователем mpak, 22 ноя 2010.

  1. mpak

    mpak Активный пользователь

    С нами с:
    30 окт 2006
    Сообщения:
    440
    Симпатии:
    0
    На днях пришла в голову идея сделать скрипт для себя которому можно было бы отдать адрес сайта или демки шаблона в ответ получить архив содержащий в себе все ресурсы используемые на странице. Поле двух дней работы представляю вам то что получилось.

    http://mpak.su/themes:grab

    Скрипт делает следующее. Получает главную страницу из полученной ссылки. Регулярным выражением проходит по содержимому документа выбирает все css файлы. Скачивает их заменяя в тексте ссылки на ксс файл локальными. Проходит по сожержимому каждого ксс файла в поисках ссылок на графические файлы. Также скачивает их в локальную директорию. В ксс заменяет глобальную ссылку на графический файл локальной. Помимо этого проходит по основному документу в поисках яваскриптов и ссылок на грфиечкие файлы, складывает их локально заменяя ссылки в документе на локальные. В итоге на выходе должен получиться архив с index.html и всеми ресурсами доступными локально по локальным же ссылкам.

    Мне эта штука позволяет экономить кучу времени помогая прикручивать демки шаблонов к своему двиглу. Подумал что подобная штука может пригодится не только мне. Скрипт еще в стадии беттатестирования. О найденных ошибках просьба отписывать в ветку. На момент написания скрипта не все адреса удается корректно сграбить, но работа продолжается. Кому интересно предлагаю принять участие.

    Скрипт принимает только http:// ссылки.
     
  2. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    а в браузере функция "Сохранить как" "Веб-страница полностью" разве не то же самое делает?
     
  3. Ensiferum

    Ensiferum Активный пользователь

    С нами с:
    11 июл 2010
    Сообщения:
    1.292
    Симпатии:
    0
    Адрес:
    из секты поклонников Нео
    tommyangelo
    После сохранения нужно немного шаманить: весь контент сохранняется в Index_files, и приходится пути исправлять. Хотя особо не запарно, благо "заменить" есть в каждом редакторе
     
  4. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    Ensiferum

    А, т.е вся разница в том, что через браузер всё лежит в одной папке, а будет лежать например в папках img, css, js ?
     
  5. Ensiferum

    Ensiferum Активный пользователь

    С нами с:
    11 июл 2010
    Сообщения:
    1.292
    Симпатии:
    0
    Адрес:
    из секты поклонников Нео
    про папки не ведаю, но думаю, что всё будет лежать рядом с Index.html
     
  6. tommyangelo

    tommyangelo Старожил

    С нами с:
    6 дек 2009
    Сообщения:
    2.549
    Симпатии:
    0
    Адрес:
    Мариуполь
    :) ясн, спасибо) Файлы в архив я и сам упакую))))))