質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
スクレイピング

スクレイピングとは、公開されているWebサイトからページ内の情報を抽出する技術です。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

1回答

1861閲覧

【GAS】スクレイピング ログイン(楽天カード)

anakama

総合スコア15

スクレイピング

スクレイピングとは、公開されているWebサイトからページ内の情報を抽出する技術です。

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

2クリップ

投稿2019/06/16 17:44

前提・実現したいこと

楽天カードの明細(csv)を、GASでスクレイピングしてダウンロードしたいのですが、
ダウンロード以前にログインすら出来ていないようで、スクレイピングした結果、ログインページのHTMLコードが表示されます。
(明細のcsvファイルを、とりあえずスプレッドシートに流し込むことを想定しています。)

原因や問題個所など、ご教示頂けますと幸いです。

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

function get_CSV() { // ログインページ var LOGIN_URL = "https://www.rakuten-card.co.jp/e-navi/index.xhtml"; // CSVファイルダウンロード先(UTF-8) var CSV_DOWNLOAD_URL = "***"; // ログインID var id = "〇〇〇"; // パスワード var password = "■■■"; // HTTPリクエストのパラメータをobjectで設定 // POSTで渡すフォームデータはpayloadで指定 var options = { method : "post", followRedirects: false, // リダイレクト無し contentType: "application/x-www-form-urlencoded", payload : { u: id, p: password } }; // ログイン var response = UrlFetchApp.fetch(LOGIN_URL, options); var cookies = response.getHeaders()["Set-Cookie"]; // 取得したcookieをリクエストヘッダーに入れ、ログイン状態保持 var headers = { 'Cookie' : cookies }; options = { method : "get", headers : headers, followRedirects: true, //リダイレクトあり  }; // CSVファイル取得 response = UrlFetchApp.fetch(CSV_DOWNLOAD_URL, options); var data = response.getContentText("UTF-8"); // スプレッドシートへの書き込み var spreadsheetObj = SpreadsheetApp.getActiveSpreadsheet(); var sheet = spreadsheetObj.getSheetByName("csv"); var csv = Utilities.parseCsv(data); sheet.getRange(1, 1, csv.length, csv[0].length).setValues(csv); }

試したこと

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

このページではbot対策としてページを再読込するたびに変わるワンタイムパスワードがあります。
それも入力しないといけません。

投稿2019/08/01 05:41

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問