Python вопрос как сделать так ?

Discussion in 'PHP' started by TikTik, 28 Dec 2009.

  1. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    :1. Поскольку все хозяйство у нас должно покоиться в одном ру-файле. то картинку нужно будет сжать, а потом закинуть в base64 (превратив в строку!. Теперь — немножко питоновской магии с объектом gzip.GzipFile. которому при создании мы указываем, куда сохранять уже сжатые данные, и получаем код. который читает файл my.jpg, сжимает, кодирует функцией baseoi.encodestring в строку base64 и полученную строку-изображение сохраняете rez_img.txt;
    Собственно вот объясните на пальцах пожалуйста только начал изучать питон буквально 2 дня ну уж очень хочется проделать вот этот вот трюк:)
    повторяю код по описанию но не могу разобраться с изображением где же находится этот base64 скрипт на преобразования картинки в текст вот



    Code:
    img_file = 'my2.jpg' 
     
    import StringIO 
    import gzip 
    import base64  
    
    zbuf = StringIO.StringIO() 
    zfile = gzip.GzipFile(mode='wb', fileobj=zbuf) zfile.write(open(img_file,'rb').read()) zfile.close()  open('rez_img.txt','w').write(base64.encodestring(zbuf.getvalue()))
    но как это всё сделать я не пойму из за слишком малых познаний на данный момент в Python помогите
    Имею ввиду как свою картинку преобразовать в текст ?
    где он этот rez_img.txt создаёт :mad:
     
    #1 TikTik, 28 Dec 2009
    Last edited: 28 Dec 2009
  2. Forcer

    Forcer Elder - Старейшина

    Joined:
    12 Apr 2007
    Messages:
    321
    Likes Received:
    98
    Reputations:
    12
    rez_img.txt создает в рабочей директории - откуда запускается интерпретатор.
     
  3. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    Блин стыдно)) но всё ровно спрошу я облазил всё, ты имеиш ввиду в папке Python 26 я там всё облазил IDLE я запускаю из пуск/программы
    Я не знаю откуда он ещё может запускаться :confused: :confused: :( :( :( :( :(
    можно по пальцам я ещё вобще зелёный :( но очень трудолюбивый :)
     
  4. Forcer

    Forcer Elder - Старейшина

    Joined:
    12 Apr 2007
    Messages:
    321
    Likes Received:
    98
    Reputations:
    12
    Если добавить в переменную окружения path директорию с питоном, то его можно будет запускать из любой директории. Допустим, у нас есть директория /parent, в ней есть директория child. Наш скрипт test.py лежит в папке child, то есть полный путь /parent/child.
    Содержимое test.py(вывод рабочей директории):
    PHP:
    import os

    print os.getcwd()
    Допустим, мы находимся в директории parent и запускаем наш скрипт:
    Code:
    python child/test.py
    На экране мы увидим:
    Code:
    /parent
    Если мы перейдем в директорию child и оттуда запустим наш скрипт, то он выведет следующее:
    Code:
    /parent/child
    Читай книжки вообщем.
     
    1 person likes this.
  5. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    Спасибо большое ответ и за терпение !!!
    Да забежал вперёд на много, ну уж очень захотелось по пробывать

    Вот тут ещё вопросик пытаюсь создать тест
    [​IMG]
    с помощью программы pyinstaller для .exe выскакивает вот такая вот ошибочка там по идеи в папке test должен будет появится файлик ok.txt
    Code:
    print "Ok"
    open("ok".txt , "w").write ('ok')
    скорей всего наверно с кодом что то не так очень плохое качество скана почти нечего не видно :( :(
     
    #5 TikTik, 28 Dec 2009
    Last edited: 30 Dec 2009
  6. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    так не кто и не подскажет на счёт кода правильный или нет ?
     
  7. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    Эмм.
    WindowsError это не похоже на ошибку в твоём коде.
    P.S. Попробуй использовать py2exe а не PyInstaller.
     
  8. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    Спасибо ща затестим !

    PyInstaller да как говорится всё гениальное просто это о нём))
     
  9. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    что в конце кода написать чтоб командное окошко не закрывалось сразу чтоб можно было посматреть что там пишет ошибка в коде или нет ??
     
  10. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    Блин не получается сделать test
    вот код Теста
    [​IMG]
    вот такую ошибку выдаёт
    [​IMG]
    а должно быть так
    c:\pyinstaller> Makespec.py -F -w -X d:\test\ test,py
    c:\pyinstaller> Build.py d:\pyinstaller\test\ test.spec
    Несколько секунд ожидания... готово! Результат работы покоится в папке d:\pyinstaller\test\distV Наш test.exe получился размером в 2.4 Мб. и, если его запустить, то может показаться, что ничего не сработало — окна нет. Однако ok.txt создается, а значит, все отлично работает.
    но этот ok так и не создаётся и папки новой не появляится
     
    #10 TikTik, 30 Dec 2009
    Last edited: 30 Dec 2009
  11. login999

    login999 Elder - Старейшина

    Joined:
    12 Jun 2008
    Messages:
    491
    Likes Received:
    280
    Reputations:
    92
    По рукам вас бить нужно =/
    IndentationError - натуплено с отступами =\

    P.S. >2 rushter А еще есть самая офигенная штука, имя которой Gui2exe(Типа специально для wxpython враппер для всех этих "экзеделок")
     
    #11 login999, 30 Dec 2009
    Last edited: 30 Dec 2009
    1 person likes this.
  12. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    По инструкции просто делаю но пробывал как только не переставлял эти индикаторы не получается не как та же ошибка :(
     
  13. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    всё разобрлся просто отступы нужно было убрать