2016-02-18 16 views
5

मैं Google एपीआई सीखने की कोशिश कर रहा हूं और मेरा अनुभव पायथन के साथ है, इसलिए मैं Google एपी पायथन क्लाइंट का उपयोग कुछ Google की सेवाओं तक पहुंचने के लिए कर रहा हूं लेकिन सेवा ऑब्जेक्ट बनाने में त्रुटि का सामना कर रहा हूं।पायथन google api

apiclient.discovery से निर्माण मॉड्यूल आयात करने कोई समस्या नहीं है:

>>> from apiclient.discovery import build 
>>> 

लेकिन जब यह सेवा वस्तु का निर्माण करने के लिए (के रूप में ट्यूटोरियल फ़ाइल है कि मैं डाउनलोड किया में किया) समय आता है, कुछ दुर्घटनाओं और मैं कर सकते हैं क्या पता चल रहा है कि क्या गलत हो रहा है!

>>> service = build('books','v1',developerKey=api_key) 
WARNING:root:No module named locked_file 
Traceback (most recent call last): 
    File "build/bdist.macosx-10.10-intel/egg/googleapiclient/discovery_cache/__init__.py", line 38, in autodetect 
    from . import file_cache 
    File "build/bdist.macosx-10.10-intel/egg/googleapiclient/discovery_cache/file_cache.py", line 32, in <module> 
ImportError: No module named locked_file 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "build/bdist.macosx-10.10-intel/egg/oauth2client/util.py", line 140, in positional_wrapper 
    File "build/bdist.macosx-10.10-intel/egg/googleapiclient/discovery.py", line 196, in build 
    File "build/bdist.macosx-10.10-intel/egg/googleapiclient/discovery.py", line 242, in _retrieve_discovery_doc 
    File "/Library/Python/2.7/site-packages/httplib2-0.9.2-py2.7.egg/httplib2/__init__.py", line 1609, in request 
    (response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey) 
    File "/Library/Python/2.7/site-packages/httplib2-0.9.2-py2.7.egg/httplib2/__init__.py", line 1351, in _request 
    (response, content) = self._conn_request(conn, request_uri, method, body, headers) 
    File "/Library/Python/2.7/site-packages/httplib2-0.9.2-py2.7.egg/httplib2/__init__.py", line 1272, in _conn_request 
    conn.connect() 
    File "/Library/Python/2.7/site-packages/httplib2-0.9.2-py2.7.egg/httplib2/__init__.py", line 1036, in connect 
    self.disable_ssl_certificate_validation, self.ca_certs) 
    File "/Library/Python/2.7/site-packages/httplib2-0.9.2-py2.7.egg/httplib2/__init__.py", line 80, in _ssl_wrap_socket 
    cert_reqs=cert_reqs, ca_certs=ca_certs) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ssl.py", line 911, in wrap_socket 
    ciphers=ciphers) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ssl.py", line 520, in __init__ 
    self._context.load_verify_locations(ca_certs) 
IOError: [Errno 13] Permission denied 
>>> 

यहाँ कैसे मैं मामले में इस मुद्दे पर मिल गया है, यह उपयोगी है: Google API Python Installation: मैं क्लाइंट लाइब्रेरी और सभी अन्य मॉड्यूल है कि इस पर निर्भर के रूप में यहां रेखांकित की स्थापना के द्वारा शुरू कर दिया। मैंने पाइप (और आवश्यक सूडो) का इस्तेमाल किया और सबकुछ तैराकी से चला गया। मैंने पाइप के - अपडेट तर्क के साथ मॉड्यूल को अपडेट करके अपनी त्रुटि को ठीक करने का प्रयास किया है, लेकिन यह समस्या नहीं प्रतीत होती है क्योंकि उनमें से सभी कहते हैं "आवश्यकता पहले से ही अद्यतित है: {यहां मॉड्यूल दस्तावेज़ का नाम}" इसलिए मुझे विश्वास नहीं है कि यह समस्या है।

उसके बाद, मैंने ट्यूटोरियल का पालन करना शुरू किया। ट्यूटोरियल में, यह Google पुस्तकें: Google Books Example के साथ इंटरफेस करने के लिए उदाहरण API (जो मुझे परेशानी दे रहा है) देता है। मुझे ट्यूटोरियल की शुरुआत में उल्लिखित Google से एपीआई डेवलपर कुंजी मिली है और मुझे विश्वास नहीं है कि यह समस्या है क्योंकि मैं सेवा ऑब्जेक्ट को निष्पादित नहीं कर रहा हूं।

मैंने त्रुटि को गुमराह किया लेकिन समान समस्याओं वाले किसी को भी नहीं देखा, इसलिए मुझे आशा है कि यहां लोग मदद कर सकते हैं!

धन्यवाद,

MLP

उत्तर

0
IOError: [Errno 13] Permission denied 

ऐसा लगता है कि अनुमति के साथ मुसीबतों की है। chown 'username' 'python file'

या chown -R 'username' 'directory name'

+0

मैंने अभी कोशिश की है (फ़ाइल/डीआईआर पर एपीआई सही है? मॉड्यूल या कुछ भी नहीं?) लेकिन एक ही त्रुटि मिली :(यहां अनुमतियां हैं पाइथन फ़ाइल से यह चल रहा है: "-rw-r-r-- 1 mlp staff 2271 Feb 18 00:54 GoogleBooksExample.py", और यहां मॉड्यूल के लिए अनुमतियां हैं जो यह ट्रेसबैक में तुरंत पहले उल्लेख करती हैं "-rw- आर - आर-- 1 रूट व्हील 36583 जुलाई 14 2015 एसएसएलटीवी " – MLP

+1

@ एमएमपी और क्या होगा यदि व्यवस्थापक विशेषाधिकारों के साथ स्क्रिप्ट चलाए? क्या यह काम करेगा? – noise

5

यहाँ एक ही है, ऐसा लगता है वहाँ oauth2client 2,0

>>> from oauth2client.locked_file import LockedFile  
    Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    ImportError: No module named locked_file 

भी मैं GitHub पर एक खुला मुद्दा मिल गया में एक LockedFile नहीं है। यह एक google-api-python-client त्रुटि है: https://github.com/google/google-api-python-client/issues/179

+1

यह अभी मास्टर शाखा में तय हो गया है – patroqueeet