0
Googleスプレッドシートの情報を、Googleスプレッドシートから正しく収集するには、ユーザーに何かを認証させる必要はありませんか?権限のないGoogleスプレッドシートの情報を収集する
これまでのところ、私はそれがトリックを行ってきたはずですが、私は
「com.google.gdata.util.AuthenticationExceptionで立ち往生のようにそれが見えた次のコードを持っています。エラー認証(サービスをチェックします名)は、」
次のコードは、以下のことを生成は、ユーザのログインとパスワードは、クライアントのログインと呼ばれるプライベートGoogleのデータにアクセスするためのログイン名とパスワードを使用して
package streamupdater.util;
import com.google.gdata.client.spreadsheet.SpreadsheetService;
import com.google.gdata.data.spreadsheet.ListEntry;
import com.google.gdata.data.spreadsheet.ListFeed;
import com.google.gdata.data.spreadsheet.SpreadsheetEntry;
import com.google.gdata.util.ServiceException;
import java.io.IOException;
import java.net.URL;
public class readData {
public static final String GOOGLE_ACCOUNT_USERNAME = "abc";
public static final String GOOGLE_ACCOUNT_PASSWORD = "xxx";
public static final String SPREADSHEET_URL = "https://docs.google.com/spreadsheets/d/1fS0d19BOExTPdWqIYTvD9IskGIYEskqPY0WL9i7FByk/edit#gid=0";
public String getData(){
String status="";
try{
/** Our view of Google Spreadsheets as an authenticated Google user. */
SpreadsheetService service = new SpreadsheetService("Print Google Spreadsheet Demo");
// Login and prompt the user to pick a sheet to use.
service.setUserCredentials(GOOGLE_ACCOUNT_USERNAME,
GOOGLE_ACCOUNT_PASSWORD);
// Load sheet
URL metafeedUrl = new URL(SPREADSHEET_URL);
SpreadsheetEntry spreadsheet = service.getEntry(metafeedUrl,SpreadsheetEntry.class);
URL listFeedUrl = spreadsheet.getWorksheets().get(0).getListFeedUrl();
// Print entries
ListFeed feed = service.getFeed(listFeedUrl, ListFeed.class);
for (ListEntry entry : feed.getEntries()) {
System.out.println("new row");
for (String tag : entry.getCustomElements().getTags()) {
System.out.println(" " + tag + ": "
+ entry.getCustomElements().getValue(tag));
status=entry.getCustomElements().getValue(tag);
}
}
}catch(Exception e){
System.out.println(e);
}
System.out.println(status);
return(status);
}
public static void main(String[] args) {
readData rd = new readData();
rd.getData();
}
}
全体的に、まだ認証が必要です。私はこれに別のアプローチを試みます、どうもありがとうございます。私は認可が必要だと思っていますが、私の他のアプローチは優れた文書を読むことです。 –
Googleのシートは優れたドキュメントではありません。 Googleドライブにファイルをアップロードすると、Googleシートのドキュメントが表示されます。その後、GoogleシートAPIを使用してアクセスできます。 APIキーまたはサービスアカウントを使用して、ユーザーにファイルへのアクセス権を要求することはできません。しかし、あなたはまだGoogle開発者のコンソールにあなたのプロジェクトを登録する必要があります。 – DaImTo
私は約1冊のシートと優れた書類を手に入れているので、ユーザーはシートをダウンロードして、それをExcelの書類にする必要があります。 –