Я надеюсь, что это простая проблема, и я просто что-то упускаю. У меня есть сценарий, сохраненный в двух разных местах: на нашем общем сервере и локально на моем рабочем столе. Когда я запускаю скрипт с сервера, я получаю сообщение об ошибке easygui.
Traceback (most recent call last):
File "Z:\Python\module1.py", line 35, in <module>
reply = buttonbox(msg=msg,image=IMG)
TypeError: buttonbox() got an unexpected keyword argument 'msg'
Это я могу обойти. По какой-то причине сообщение требуется для версии, сохраненной на сервере, а сообщение требуется для версии, сохраненной на моем рабочем столе. Это нормально, так как это, по крайней мере, работает. Что ломает это для меня, так это функция изображения. Он работает в версии на моем рабочем столе, но я понятия не имею, как заставить его работать в версии на нашем сервере. Полный код показан ниже:
import PIL
from PIL import Image
import os
from easygui import *
import sys
print sys.version, sys.version_info
WORKDIR = "c:\\temp"
DESKTOP = 'c:' + os.environ['HOMEPATH'] + "\Desktop"
os.chdir(DESKTOP)
IMAGES = os.listdir(DESKTOP+"\\New Items Images")
for IMAGE in IMAGES:
path = DESKTOP+"\\New Items Images\\"+IMAGE
#Creates a Tkinter-compatible photo image, which can be used everywhere Tkinter expects an image object.
img = Image.open(path)
width, height = img.size
if width >= height:
basewidth = 600
wpercent = (basewidth / float(img.size[0]))
hsize = int((float(img.size[1]) * float(wpercent)))
else:
baseheight = 600
hpercent = (baseheight / float(img.size[1]))
wsize = int((float(img.size[0]) * float(hpercent)))
img = img.resize((basewidth, hsize), PIL.Image.ANTIALIAS)
img.save(DESKTOP + "\\" + IMAGE)
IMG = DESKTOP+"\\"+IMAGE
SKU = "sku"
msg = "Is %s acceptable?\n%s\n%sx%s" % (IMAGE, SKU, width, height)
reply = buttonbox(msg=msg,image=IMG)
if ynbox == 1:
print "This would now get pushed to CA"
` Вообще говоря, я знаю, что это, вероятно, уродливый код. Но помимо этого, конечной целью игры здесь является открытие изображения, отображение его пользователю, а затем удаление всех созданных изображений с рабочего стола. Любые советы или помощь будут очень признательны.
os.path.join
для папок вместо обратной косой черты. Тогда не могли бы вы попытаться напечатать вызовos.path.exist
с помощьюIMG
, чтобы проверить, что говорят серверы? - person Adonis   schedule 12.04.2018