0

urllib を使用して Web から画像を保存しようとしていますが、このエラーが発生し続けます。

[Wed Oct 17 10:03:43 2012] [error] [client 223.232.227.124] urllib.urlretrieve(image,ban)
[Wed Oct 17 10:03:43 2012] [error] [client 223.232.227.124]   File "/usr/lib/python2.6/urllib.py", line 93, in urlretrieve
[Wed Oct 17 10:03:43 2012] [error] [client 223.232.227.124]     return _urlopener.retrieve(url, filename, reporthook, data)
[Wed Oct 17 10:03:43 2012] [error] [client 223.232.227.124]   File "/usr/lib/python2.6/urllib.py", line 243, in retrieve
[Wed Oct 17 10:03:43 2012] [error] [client 223.232.227.124]     tfp = open(filename, 'wb')
[Wed Oct 17 10:03:43 2012] [error] [client 223.232.227.124] IOError: [Errno 13] Permission denied: '/public/env/lib/python2.6/site-packages/project-0.0-py2.6.egg/project/images/series/graphical/104281-g2.jpg'

コード :

ban='/public/env/project/project/images/series/%s'%(banner)
image='http://www.thetvdb.com/banners/%s'%(banner)
urllib.urlretrieve(image,ban)

コードは、Pyramid ウェイトレス サーバーと mod_wsgi を使用して私のローカルホストで完全に正常に動作していますが、運用サーバーでは動作していません。

開発には Pyramid フレームワークを使用しています。

4

1 に答える 1

2

これは権限の問題です。サーバーで行おうとしている場所に書き込む権限がありません。アクセス許可のある別の場所を試すか、そのディレクトリに適切なアクセス許可を設定してください。

urlretrieve(url, filename=None, reporthook=None, data=None)

2 番目の引数は、書き込み先のファイル名です。webapp から実行しているため、webapp を実行しているプロセスには、書き込もうとしている場所へのアクセス許可が必要です。

于 2012-10-17T04:53:18.843 に答える