Python — Не удается сохранить изображение PIL из команды оболочки (PHP)

У меня есть довольно простой скрипт на Python, который создает изображение, пишет текст и, наконец, выводит в файл. Запуск скрипта из терминала через ssh работает нормально и выводит изображение, как и ожидалось. Однако, если я попытаюсь выполнить команду через php, все будет работать до тех пор, пока я не запущу функцию img.save ().

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

Предложения?

ПИТОН:

from PIL import Image
background = Image.new('RGB', (50, 50), 'black')
print 'img created'
background.save('test.png')
print 'img saved'

PHP:

$execStr = "python imgScript.py";
exec($execStr,$output,$message);
print_r($output);
//output// Array ( [0] => img created )

0

Решение

Попробуйте использовать абсолютный путь. Как это:

background.save('/path/to/test/test.png')

или даже это:

import os
background.save(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'test.png'))

Это сохранит файл в том же каталоге, что и ваш скрипт

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]