2011-06-16 78 views
2

嗨,我是新來的Python ... 我想用Python使用YQL。 我安裝httplib2-0.7.0,的oauth2再裝YQL包Python的YQL包錯誤

對於此示例的代碼:

import yql 
y = yql.Public() 
query = 'select * from flickr.photos.search where text="panda" limit 3'; 
result = y.execute(query) 
print result 

我得到了下面的錯誤消息。

請幫忙!!

回溯(最近通話最後一個):

文件 「test.py」,4號線,在 結果= y.execute(查詢)

文件「C:\ Python27 \ LIB \ site-packages \ yql-0.7-py2.7.egg \ yql__init __。py「,行306,執行 resp,content = self.http.request(url,http_method)

文件」C:\ Python27 \ lib \ site-packages \ httplib2__init __。py「,第1436行,請求 (response,content)= self._request(conn,authority,uri,request_uri,met HOD,身體,標頭,重定向,cachekey )

文件 「C:\ Python27 \ lib中\站點包\ httplib2__init __ PY」,線1188,在_request (響應,內容)= self._conn_request(康涅狄格州,REQUEST_URI,方法,身體,頭部)

文件 「C:\ Python27 \ lib中\站點包\ httplib2__init __ PY」,線1123,在_conn_request conn.connect()

文件「C: \ Python27 \ lib \ site-packages \ httplib2__init __。py「,第890行,連接 self.disable_ssl_certificate_validation,self.ca_certs)

文件 「C:\ Python27 \ lib中\站點包\ httplib2__init __ PY」,線路76,在_ssl_wrap_socket cert_reqs = cert_reqs,ca_certs = ca_certs)

文件「C:\ Python27 \ lib中\ SSL。 PY」,線344,在wrap_socket 密碼=密碼)

文件 「C:\ Python27 \ lib中\ ssl.py」,線119,在初始化 密碼)

ssl.SSLError: Errno 185090050] _ssl.c:336:錯誤:0B084002:x509證書例程:X509_load_cert_crl_file:系統庫文件

當我試圖使用* twitter python wrapper,我最終得到了相同的SSL錯誤。 *

請告訴我該怎麼做

回答

0

我可以看到兩個可能的問題:

SSL證書

我不熟悉Python或圖書館你使用,但錯誤聽起來像它無法驗證SSL證書。 (可能是因爲沒有合適的本地SSL證書包進行身份驗證。)您可以將其配置爲跳過SSL證書驗證。

YQL Flickr的查詢

的YQL查詢是不正確的,並給出了YQL console錯誤:

select * from flickr.photos.search where text="panda" limit 3

事實上,鑑於這一問題的時代,它可能已經在工作現在Flickr表也需要API密鑰,所以工作查詢看起來像:

select * from flickr.photos.search where text="panda" and api_key="insert-your-key-here" limit 3