2014-11-07 2 views
0

urlread가 링크가있는 모든 사용자에게 제공되는 스프레드 시트를 열지 못했습니다. 브라우저에서 열리지 만 urlread에서이 오류를 표시합니다.옥타브가 Google 스프레드 시트를 읽지 않습니다.

옥타브 : 1> a = urlread ('https://docs.google.com/spreadsheets/d/.../edit?usp=sharing'); 오류 : urlread : curl : 주어진 CA 인증서로 피어 인증서를 인증 할 수 없습니다.

Google 스프레드 시트를 옥타브 프로그램으로 가져올 수있는 방법이 있습니까?

+0

GNU/Linux 또는 Windows의 옥타브? 나중에 CA 인증서를 설치 했습니까? – Andy

+0

Windows에서 (미친 짓이야?), 지금은 리눅스로 돌아 왔지만 여전히 숫자 배열을 검색 할 수 없었다. – nightcod3r

답변

3

이것은 작동하는 것처럼 보이지만 내가 게시 한 URL의 끝에 "공유"가 있기 때문에 누구나 볼 수있는 Google 스프레드 시트 링크가 필요합니다.

octave:1> urlwrite("https://docs.google.com/spreadsheets/d/.../export?format=csv", "filename.csv") 
octave:2> a = load("filename.csv") 
a = 

    1 23 4 5 
    1 6 3 7 
    1 6 6 7 

...을 Google 스프레드 시트의 ID로 바꿉니다.

여기서 핵심 구성 요소는 파일 다운로드를 csv로 지정하는 /d/.../export?format=csv입니다. Google 스프레드 시트는 csv를 사용하지 않으려는 경우 여러 가지 파일 유형도 지원합니다.

+0

Naphtha, 감사합니다.이 파일은 csv 형식 대신 html 파일로 읽었지만 읽을 수는 없지만 파일을 읽었습니다. 여기서 뭐가 잘못 됐는지 알아낼 수 있니? 또한 Google 스프레드 시트의 값을 옥타브에서 업데이트 할 수있는 방법이 있습니까? 내 말은, 자바 API에서 .setValue()를 사용하는 것입니다. – nightcod3r

+0

스프레드 시트를 업데이트하려면 [Google 스프레드 시트 API] (https://developers.google.com/google-apps/spreadsheets/#updating_a_list_row)를 사용할 수있는 것으로 보입니다. 그러나 Octave를 사용하여 시트를 편집 할 필요가있을 때 얼마나 가치가 있는지에 따라 문제가 될 수 있습니다. urlwrite()에서 html 파일을 반환하는 문제에 관해서는. 링크가있는 모든 사용자가 문서를 볼 수 있도록 문서 공유를 설정하지 않으면 이러한 상황이 발생할 수 있습니다. Google 시트의 오른쪽 상단에있는 "공유"버튼을 클릭하고 "공유 가능 링크"를 클릭하십시오. – ngtvspc

+1

다른 사람들이 다음과 같은 세련된 버전에 댓글을 달았을 것 같습니다 : [New Google Spreadsheets publish limitation] (http : //stackoverflow.com/a/23702001/4179803). @Naphtha – nightcod3r

관련 문제