Простой конвертер на WEB

Языки программирования, IDE, компиляторы, интерпретаторы, гипервизоры и виртуальные среды
Правила форума
Правильно сформулированный вопрос и его грамотное оформление способствует высокой вероятности получения достаточно содержательного и по существу ответа.

Автор темы
krazen
Сообщения: 17
Зарегистрирован: 18 дек 2016, 22:34
Откуда: Краснодар\Нижневартовск
Благодарил (а): 1 раз

Простой конвертер на WEB

Сообщение krazen » 17 фев 2017, 14:51

Всем добра.
Вопрос назрел давно но реализавать надо уже сегодня. Стоит задача создания простого конвертера для обработки файлов ВНУТРИ СЕТИ , без использования онлайн сервисов и платных программ. Перечислять сайты онлайн-конвертеров не буду так как каждый уже имеет ссылку на полюбившийся. Итак, необходимо сделать сстраничку на которой где есть 2 кнопки: 1 обзор, 2 загрузить. 1- выполняет поиск добавляемого файла на сервер, 2- начинает процедуру конвертирования (из pdf в jpg например). После чего должна открыться сообщение о том куда сохранить зазипованный архив распиленного pdfфайла на jpgи.
Вот собственно и всё что нужно воплотить в реальность. :help: Может кто уже создал нечно подобное, поделитесь мануалом.

В сети
Аватара пользователя

Dja
Сообщения: 2758
Зарегистрирован: 27 авг 2016, 17:03
Решено: 11
Откуда: Воскресенск
Благодарил (а): 389 раз
Поблагодарили: 282 раза

Простой конвертер на WEB

Сообщение Dja » 17 фев 2017, 15:03

Я думаю надо смотреть на тему где из jpeg делали pdf и обратить.
Новичок? - ознакомься с правилами

В поисках истины :grabli:

В сети
Аватара пользователя

Chocobo
Сообщения: 5503
Зарегистрирован: 27 авг 2016, 19:57
Решено: 128
Откуда: НН
Благодарил (а): 411 раз
Поблагодарили: 1427 раз

Простой конвертер на WEB

Сообщение Chocobo » 17 фев 2017, 15:06

krazen, не нашел в своих закромах черновики, хотя когда-то делал подобные простенькие формы.

т.к. php я не очень люблю - я бы взял связку Python+WebPy

посмотри базовое, там все на плаву вроде:
Установка, Введение, Аплоад файлов

Если вечерком будет время - попробую набросать пример.


Автор темы
krazen
Сообщения: 17
Зарегистрирован: 18 дек 2016, 22:34
Откуда: Краснодар\Нижневартовск
Благодарил (а): 1 раз

Простой конвертер на WEB

Сообщение krazen » 17 фев 2017, 16:32

а есть вариант скачать один из сайтов и перепилить под себя?

В сети
Аватара пользователя

Chocobo
Сообщения: 5503
Зарегистрирован: 27 авг 2016, 19:57
Решено: 128
Откуда: НН
Благодарил (а): 411 раз
Поблагодарили: 1427 раз

Простой конвертер на WEB

Сообщение Chocobo » 17 фев 2017, 16:52

krazen, вопрос только зачем, если там кода на три десятка строк)

в общем, немного освежив память вот такой набросок родился:

Код: Выделить всё

import web
import os
urls = ('/upload', 'Upload')

class Upload:
    def GET(self):
        web.header("Content-Type","text/html; charset=utf-8")
        return """<html><head></head><body>
<form method="POST" enctype="multipart/form-data" action="">
<input type="file" name="myfile" />
<br/>
<input type="submit" />
</form>
</body></html>"""

    def POST(self):
        x = web.input(myfile={})
        filedir = '/tmp' # change this to the directory you want to store the file in.
        if 'myfile' in x: # to check if the file-object is created
            filepath=x.myfile.filename.replace('\\','/') # replaces the windows-style slashes with linux ones.
            filename=filepath.split('/')[-1] # splits the and chooses the last part (the filename with extension)
            myfile_location = filedir +'/'+ filename
            fout = open(myfile_location,'w') # creates the file where the uploaded file should be stored
            fout.write(x.myfile.file.read()) # writes the uploaded file to the newly created file.
            fout.close() # closes the file, upload complete.
            getFile = file( myfile_location, 'rb' )
            os.system("convert " + myfile_location +" -rotate 90 " + myfile_location )
            web.header('Content-type','application/octet-stream')
            web.header('Content-transfer-encoding','base64')
        return getFile.read()



if __name__ == "__main__":
   app = web.application(urls, globals())
   app.run()
обработка банальная, поворачиваем на 90 градусов по часовой :smile:

Проверить как оно примерно работает - можешь здесь (пока оставлю запущеным)

Разбирайся, будут вопросы - подскажу в меру компетенций :smile:


Автор темы
krazen
Сообщения: 17
Зарегистрирован: 18 дек 2016, 22:34
Откуда: Краснодар\Нижневартовск
Благодарил (а): 1 раз

Простой конвертер на WEB

Сообщение krazen » 22 фев 2017, 11:33

это конечно круто, нет слов. Но надо сделать у мен на компе. Если мануал напишешь то мои праздники пройдут более радостными нежели в постеле с ознобом, соплями и головной болью.

В сети
Аватара пользователя

Chocobo
Сообщения: 5503
Зарегистрирован: 27 авг 2016, 19:57
Решено: 128
Откуда: НН
Благодарил (а): 411 раз
Поблагодарили: 1427 раз

Простой конвертер на WEB

Сообщение Chocobo » 22 фев 2017, 12:24

krazen, так весь код я тебе привел вобщем-то :smile:

установить web.py модуль, код из под спойлера в файл somehow.py и запустить с python somehow.py стартанет локальный сервер для обработки запросов, найдешь его на 127.0.0.1:8080/upload
и ковырять под свои нужды дальше :thumbs:

ну и imagemagic для команды convert притянуть


Автор темы
krazen
Сообщения: 17
Зарегистрирован: 18 дек 2016, 22:34
Откуда: Краснодар\Нижневартовск
Благодарил (а): 1 раз

Простой конвертер на WEB

Сообщение krazen » 22 фев 2017, 13:57

как сделаю так отпишусь что куда развернул.

Вернуться в «Программирование, скриптинг, виртуализация»