создать HTML в Python
привет!
параллельно буду искать в сети, но просьба к тем, у кого данная тема уже выполнена и могут сделать подарок. мне нужен код в питоне, который:
- вычитывает из папок содержимое (в папках только картинки)
- создает HTML страницу
- вставляет в страницу картинки размером 80 х 60, т.е. очень уменьшенные
- при нажатии на маленькую картинку должна всплыть картинка с ее начальной резолюцией.
поможете?
Больше времени уйдет на поиски. Начинайте сами.
Первое, начните с создания HTML страницы для данного задания. Накидайте 5-10 картинок, уменьшите их в редакторе и свяжите всё вместе. Сделайте две папки: одну для больших картинок, другую для маленьких.
Затем начинайте делать программу по небольшим шагам.
Вам понадобится путь к картинкам и путь к готовой странице. Вначале задайте их просто константами в тексте программы.
Картинки имеют различные форматы. Вначале можно ограничится только jpg и тем что картинки будут в одной единственной папке.
Читаете имена файлов из каталога с фильром "*.jpg", записываете их в массив.
Копируете файлы из исходного каталога в папку со страницей.
Уменьшаете все файла и копируете их в другую папку.
Затем из примера ХТМЛ выделяете "постоянные" части, которые не меняются - это начало и окончание ХТМЛ.
После, отдельно, записываете часть для вставки картинок, заменяя пути и названия картинок переменными. Данную часть оформляете как функцию и вызываете ее в цикле для всех картинок.
Вот вроде и все. Хотя непонятного будет еще довольно много.
ооо, вот уже и загвоздка. перейду к заданию и объясню, почему мне это вообще нужно.
у меня в бэтче работает расчет. по окончании, код выписывает картинки результатов, допустим, температуру отдельных частей. всего в модели около двух тысяч частей, каждая часть выписывается в шести проекциях, итого около 12-и тысяч картинок. если начну писать еще и маленький формат, то и вовсе не закончу расчет.
хочу создать веб-страницу, сверху вниз перечислены все части, слева направо к каждой части ее шесть проекций. вручную просматриваю страницу и кликаю на картинку, которая мне интересна. понимаю, что две тысячи строк не так и мало, но иного способа пока нет, хотя параллельно к веб автоматически создается эксель, где красным помечаются части с критической температурой, потому в веб можно целенапраленно кликать важные для меня картинки.
неужели нет кода, который создает тамбнейлы?
вообще то задание было похоже на то что могут дать студентам.
12 тыс. картинок на одной странице как то слабо могу себе представить - 500 маленьких вроде было.
Похоже вам веб страница вообще тогда не нужна.
Берете image viewer и пользуетесь
http://filehippo.com/software/photos_images/viewers/
http://www.faststone.org/FSViewerDetail.htm
Проблема только - кто потянет столько картинок.
У меня платный ACDSee, но больше 5 тыс. в одном каталоге вроде не было
неужели нет кода, который создает тамбнейлы?
есть конечно, только питон меня и близко не интересует.
неужели нет кода, который создает тамбнейлы?
Я делал подобное (правда уже давно) во Флэше (Actionscript).
Ну и немного позже, но уже тоже давно в PHP.
Питоном как-то не интересовался.
решил. очень просто и прагматично. нарисовал в текстовом редакторе примитивную веб-страницу с таблицей, заполнил для примера картинками и все статические ссылки и имена превратил в переменные. в итоге, перловый скрипт (я умею немного перлячить) пишет веб-скелет, вписывает вместо переменных статическую ссылку на имеющуюся картинку и все...
спасибо!
таааак... неужели хром не потянет? сволочь он тогда. не проблема, разделим все папки с картинками на секции по 200-300 штук
Не вижу я что то смысла в веб странице для ваших целей. Да и выбрать вручную из такого количества будет весьма затруднительно.
да нет, смысл есть. расчет бежит на линуксе в бэтче. никакой графической оболочки на сервере нет. как еще открыть картинки? по-моему, способ один - фаер фох и иже с ним.
тем не менее, спасибо за помощь!
Я бы прикрутил визуализацию средствами R, там можно сделать неплохую интерактивность - слайдеры и прочую UIшную фигню (например - с помощью plotly). Есть генераторы HTML-а. Запускать в батче R-скрипт (R можно вызывать в пакетном режиме), он считает данные и создаст HTML.
боюсь, моих знаний в программировании не хватит, чтобы за два дня осилить сие. у меня только два дня.
с линухом дел почти нет у меня, но запустить то можно прогу
https://fedoramagazine.org/17-alternatives-to-your-default...
Просто удобно смотреть в процессе генерации.
Ну и что будет с такой баальшой страницей в бровсере, я не берусь предсказывать. Но расчета на подобное точно нет.
в итоге, перловый скрипт
------
У тебя подход немножко не правильный.
Питона пользуют под веб-сервером - генерят ХТМЛ на лету и отдают пользователю по ХТТП(с).
Но пары дней чтобы это понять и поделить на серверную и клиентскую часть - не хватит.
я половины слов не понимаю! ни разу не был программистом и быть им не хочу. что найду в гугле, то испробую и если идет, то и хватит.
Не переживай - есть куча программистов которые в этом ни ухом, ни рылом...
Не знаю - пишешь - только два дня...
За два дня это не осваивается - не нервничай по этому поводу...
уже сделал, накопировал из гугла каких-то кодов, попробовал, работает. осваивать ничего не хотел, не хочу и очень надеюсь, что никогда не придется. выкладывать итоги здесь на всеобщее осмеяние смысла не вижу, уверен, что профессионал сделает тоже самое за десять минут. я доволен и пью пиво!
уже сделал
так что страница с 12 тыс. картинок открывается за нормальное время и скроллируется без проблем?
мне тоже интересно, потому как по ожиданию, не должно работать так, чтобы можно было нормально пользоваться.
даю слово, отрапортуюсь, даже выложу все, что написал, вдруг кому-то неожиданно понадобится примитивный код.
не работает, как ты и сказал, не грузит. штук сто с трудом затягивает и виснет. буду тамбы на текст менять.
штук сто с трудом затягивает и виснет.
сто мало. Что то неправильно. Ты просто размер большой картинки изменил для показа? Тогда и не мучайся без тумбнайлов смысла не вижу. Так хоть что то можно визуально найти.
Бери просмотрщик картинок под линухом. Какой то должен работать, хотя вручную, что высмотреть будет все равно проблематично.
уже сделал, заменил маленькие картинки на текст с линком на большую картинку, зато к каждой детали наряду с картинками вывел на страницу самые важные технические детали, как толщину, плотность, коэффициент теплового излучения и до того понравилось мне писать эти строчки, что заставил скрипт помечать детали с завышенной температурой красным цветом.
интересная у вас работа, программеры!
интересная у вас работа, программеры!
-----
Неее, скучная, нудная и с головной болью...
Единственная радость - когда все работает как запланировано...
А что греете/охлаждаете? Точнее, тепловые процессы в чем рассчитываете и что показываете на картинках?
ну молодцом.
А я думал кроме картинок ничего нельзя взять.
Зачем тогда все картинки закидывать? Только те что нужны для анализа, наверняка их меньше сотни.
защищаю компоненты авто от термовоздействия. использую коды Fluent, StarCCM.
я завершаю метод стандартного термоанализа, т.е. типовая машина с типовым набором компонентов и типовым уровнем риска. как следствие, расчет бежит с типовыми рутинами и на выходе дает типовой результат. картинки деталей с завышенной температурой идут как доказательство проблемы в специальный документ с описанием проблемы и доставляются ответственному за деталь инженеру. я хочу автоматизировать составление документа. как говорится, жизнь на производстве редко сопряжена с высокими материями и слишком часто с презентацией результатов.
блин, я в шоке, сколького можно достичь программированием!
Я думал, Fluent и Star-CCM - это штучки для симулирования аэродинамики, оказывается, не только.
Завидую, интереснейшее занятие имеете : )
Что касается тамбов, то я бы продумал в сторону генерить страницы динамически: не нужно грузить тысячу картинок, если их не будет никто просматривать одновременно: сгенерить страницу с парой дюжин (или сколько логично удобно разместить на одной странице), разместь на странице какие-нибудь нажималки, чтобы листать, или что-нибудь в таком роде.
для аэродинамики подходят коды на базе теории латиса-больцмана, т.е. "бессеточные" коды, работающие по методу теории хаоса. хорошие примеры PowerFlow, XFlow.
мне удобней пользоваться методами FEM, FVM в силу их способности решать стационарно.
Мой Вам совет, пишите файловый путь в БД, прикрутите любой веб-фреймворк, и радуйтесь. От себя рекомендую Django, на базовом уровне там даже питон можно не особо знать, и там все, что Вам нужно: и простой вывод изображений, и куча вариантов сделать thumbnail на лету, и генерация html-шаблонов, и пагинация количества объектов на странице. Показывать картинки в шаблоне пары страниц - в принципе можно и за пару дней расковырять. Просто удивительно, зачем Вам пилить велосипеды, если есть готовое решение, к тому Вы не хотите быть программистом :
Спасибо, я ничего не понял. Страница уже работает. Больше мне не нужно.