0

単純なコードの実行で問題に直面しています。

import httplib2
h = httplib2.Http(".cache")
resp, content = h.request("http://example.org/", "GET")

出力は

Traceback (most recent call last):
  File "<interactive input>", line 1, in <module>
  File "C:\Python27\lib\site-packages\httplib2\__init__.py", line 1175, in __init__
    self.cache = FileCache(cache)
  File "C:\Python27\lib\site-packages\httplib2\__init__.py", line 700, in __init__
    os.makedirs(self.cache)
  File "C:\Python27\lib\os.py", line 157, in makedirs
    mkdir(name, mode)
WindowsError: [Error 5] Access is denied: '.cache'

このエラーを修正するための提案がある人はいますか?

4

1 に答える 1

1

これを機能させるには、キャッシュ ディレクトリを除外するだけです。

import httplib2
h = httplib2.Http()
resp, content = h.request("http://example.org/", "GET")

上記のコメントにあるように.cache、コードを実行しているパスに関連するディレクトリを作成する権限がありません。

もちろん、キャッシュを持っている方が良いです...

アクセス許可の問題を引き起こさない単純なメモリ内キャッシュについては、私が書いたこの記事をチェックしてください: http://grahamlyons.com/article/a-simple-in-memory-cache-for-python-s-httplib2

于 2013-06-27T18:05:36.197 に答える