Мне нужно вызвать exiftool
в оболочке с помощью django, но кажется, что django не может использовать это программное обеспечение. Когда я запускаю exiftool -j <image>
самостоятельно в терминале, который работает хорошо, но в django результат в None
, который я думаю, показано, что Джанго не может его использовать. приведенный ниже код показывает, как я использую exiftool
в django:
cmd_get_meta = 'exiftool -j "{filename}"'.format(filename=filename)
process = subprocess.Popen(cmd_get_meta,
stdout=subprocess.PIPE,
stderr=subprocess.STDOUT,
shell=True)
raw_result = process.communicate()
meta = json.loads(str(raw_result[0], 'utf-8'))[0]
raw-result
- None после процесса вызова, и он показывает мне ошибку ниже:
File "/usr/lib/python3.5/json/decoder.py", line 357, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
я должен заметить что я запускаю django с uwsgi, но я не знаю, от какого пользователя работает. Извините, но я новичок в Ubuntu, и моих знаний о пользователях и разрешениях недостаточно. Если вам нужна дополнительная информация, пожалуйста, дайте мне знать. спасибо 1113]
я запускаю ps aux | grep exiftool
и ps aux | grep uwsgi
, и результат:
$ ps aux | grep uwsgi
backend 1243 0.0 0.0 14224 988 pts/9 S+ 14:52 0:00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn uwsgi
www-data 20469 0.0 0.7 222664 63984 ? S 2018 32:55 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/hamclassy.ini --daemonize /var/log/uwsgi/app/hamclassy.log
www-data 32357 0.0 0.8 473188 67804 ? Sl 14:18 0:00 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/hamclassy.ini --daemonize /var/log/uwsgi/app/hamclassy.log
www-data 32358 0.0 0.8 473188 67436 ? Sl 14:18 0:00 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/hamclassy.ini --daemonize /var/log/uwsgi/app/hamclassy.log
www-data 32362 0.0 0.8 476604 67700 ? Sl 14:18 0:00 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/hamclassy.ini --daemonize /var/log/uwsgi/app/hamclassy.log
www-data 32363 0.0 0.8 472792 67296 ? Sl 14:18 0:00 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/hamclassy.ini --daemonize /var/log/uwsgi/app/hamclassy.log
www-data 32368 0.0 0.9 482496 74316 ? Sl 14:18 0:01 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/hamclassy.ini --daemonize /var/log/uwsgi/app/hamclassy.log
www-data 32372 0.0 0.8 476348 67296 ? Sl 14:18 0:00 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/hamclassy.ini --daemonize /var/log/uwsgi/app/hamclassy.log
www-data 32376 0.0 0.8 477884 69996 ? Sl 14:18 0:01 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/hamclassy.ini --daemonize /var/log/uwsgi/app/hamclassy.log
www-data 32377 0.0 0.8 477116 68968 ? Sl 14:18 0:00 /usr/bin/uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/hamclassy.ini --daemonize /var/log/uwsgi/app/hamclassy.log
$ ps aux | grep exiftool
backend 1233 0.0 0.0 14224 1016 pts/9 S+ 14:52 0:00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svn exiftool