>

안녕하세요이 URL을 통해 quandl에서 csv 파일을 다운로드하려고합니다 : https://www.quandl.com/api/v3/databases/FSE/metadata?api_key=xxx

그리고 다음과 같이 파이썬으로 구문 분석하십시오 :

def UpdateFSECodes():
with requests.Session() as s:
    download = s.get(url)
    decoded_content = download.content.decode('utf-8')
    cr = csv.reader(decoded_content, delimiter=',')
    my_list = list(cr)
    for row in my_list:
        print(row)

그러나 다음과 같은 오류가 발생합니다 :

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb2 in position 11: invalid start byte

오류 메시지는 매우 명확하므로 uft-16, ascii 등 다른 인코딩으로 시도했지만 여전히 오류 메시지가 나타납니다. 또한 chardet 패키지를 사용하여 인코딩을 "추측"하려고했는데 결과는 encoding = None입니다.

이 문제를 어떻게 처리 할 수 ​​있습니까?


  • 답변 # 1

    인코딩에 잘못된 문자가있는 것 같습니다.

    불행히도 api 키가 없으면 데이터에 직접 액세스 할 수 없습니다. 그러나이 문제를 해결하는 방법은 긁힌 페이지를 찾는 것입니다. 실제로 스크랩하는 페이지가 원하는 방식이 아닐 수도 있습니다 (재 지정 될 수있는 등).

    액세스하는 페이지가 올바른 페이지라면 csv, txt 등의 파일을 찾으려고합니다. 그것들은 온라인으로 쉽게 긁는 경향이 있습니다.

    행운을 빕니다. 계속 게시 해주세요!

  • 이전 go - 배열이&val로 전달 된 다음 인터페이스로 변환되면 배열 요소를 업데이트합니다 {}
  • 다음 c# - 여전히 BackgroundWorker에서 값을 반환하는 방법을 얻지 못함