2017-12-24 1 views
0

문제가 있습니다. 친절하게 나에게SSLError : HTTPSConnectionPool (host = 'www.quandl.com', port = 443) : 최대 재시도 횟수를 초과했습니다

도움이 여기에 코드입니다 :

import pandas 
import quandl 
import time 

df = quandl.get('FINRA/FNSQ_GOOGL') 
print(df.head()) 

내가 직면하고있는 오류는 다음과 같습니다 누군가가 나에게이 문제를 해결하는 데 도움이 경우

Traceback (most recent call last): 

    File "C:\Users\Desktop\My Folder\test.py", line 5, in <module> 
    df = quandl.get('FINRA/FNSQ_GOOGL') 

    File "C:\Python27\lib\site-packages\quandl\get.py", line 48, in get 
    data = Dataset(dataset_args['code']).data(params=kwargs, handle_column_not_found=True) 

    File "C:\Python27\lib\site-packages\quandl\model\dataset.py", line 47, in data 
    return Data.all(**updated_options) 

    File "C:\Python27\lib\site-packages\quandl\operations\list.py", line 14, in all 
    r = Connection.request('get', path, **options) 

    File "C:\Python27\lib\site-packages\quandl\connection.py", line 36, in request 
    return cls.execute_request(http_verb, abs_url, **options) 

    File "C:\Python27\lib\site-packages\quandl\connection.py", line 50, in execute_request 
    raise e 

SSLError: HTTPSConnectionPool(host='www.quandl.com', port=443): Max retries exceeded with url: /api/v3/datasets/FINRA/FNSQ_GOOGL/data?order=asc (Caused by SSLError(SSLError("bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')],)",),)) 

import pandas 
import quandl 
import time 

df='' 
while df=='': 
try: 
    df = quandl.get('FINRA/FNSQ_GOOGL') 
except: 
    time.sleep(5) 
    print("try") 
    continue 
print(df.head()) 

그것은 감사하겠습니다 발행물. 미리 감사드립니다 !!

답변

0

df = quandl.get('FINRA/FNSQ_GOOGL')은 저에게 잘 작동합니다. 오류는 인증서 확인이 실패했습니다. 즉 클라이언트가 서버의 인증서를 확인할 수 없다는 의미입니다. SSL CA 인증 번들을 갱신해야 할 수도 있습니다.

certifi 패키지를 업그레이드하려고 시도 할 수 있습니다 : pip install -U certifi. 내 시스템은 certifi-2017.11.5을 사용하고 있습니다.

+0

안녕하세요 @ mhawke 님, 인증서가 최대 날짜입니다 ... 내게 해결책을 제공해 주시면 감사하겠습니다. –

+0

@SumanNagaraj :'requests' 및'quandl'의 버전은 사용하고 계십니까? HTTP 요청은 서버 인증서를 확인하기 위해 자체 CA 인증서 번들을 사용하는'requests'를 통해 이루어져야합니다. CA 번들 파일 위치는 환경 변수'REQUESTS_CA_BUNDLE' 또는'CURL_CA_BUNDLE'을 통해 설정할 수 있습니다. 변수가 설정되지 않았는지 확인하는 것이 좋습니다. – mhawke

0

방화벽 문제였습니다. 방화벽을 끄면 데이터 세트를 가져올 수있었습니다.

관련 문제