• 締切済み

ニコニコ動画のクッキーの扱いについて(IE)

ニコニコ動画のクッキーファイルを用いて、動画を閲覧させたいと思っています。 一般的に格納されている C:\Documents and Settings\username\Cookies から、username@nicovideo[n].jpファイルを開き、 user_session_xxxxxx_xxxxxxxxxxxxxxxxxxxxxx を取得しています。 上記のクッキーを用いて、ニコニコ動画Topにアクセスさせたのですが ログイン情報を取得できませんでした。(ログイン済み) 下記にソースの一部を抜粋しますので、「ここがおかしい」という点があればご教授お願い致します。 URL url = new URL("http://www.nicovideo.jp/"); HttpURLConnection conn = (HttpURLConnection)url.openConnection(); conn.setRequestMethod("GET"); conn.setRequestProperty("Referer","http://www.nicovideo.jp/"); conn.setRequestProperty("Cookie", cookieValue); //cookieValueはStrng型でcookieのuser_sessionが格納されている conn.setInstanceFollowRedirects(false); conn.connect(); InputStreamReader isr = new java.io.InputStreamReader(conn.getInputStream(), "UTF-8"); BufferedReader br = new java.io.BufferedReader(isr); String t = null; String line = null; hile (null != (line = br.readLine())) { t = t + line + "\n"; System.out.println(line); } 取得した結果は「ようこそゲストさん」となり、ログインした状態の内容を取得できていませんでした。

みんなの回答

  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.2

あ、それもそうね。 ごめんなさいだわ。 Cookieクラスの内部構造の話と混同したわ。 なので必要なのは1つね。 ニコニコ動画がどのキーで認証をしているのかわからないけど そのuser_sessionを使うなら user_session=2行目 と言う形で送信する必要があるわ。 複数必要なら;でつなげて送ってあげて。 key1=value1;ke2=value2;key3=value3 こんな感じ。

nekodake
質問者

お礼

回答ありがとうございました。 お蔭様で、無事自分の意図する処理が行えることが出来ました。 お手数お掛け致しました。

すると、全ての回答が全文表示されます。
  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.1

> ここがおかしい ・whileのwがない。まあこれはどうでもいいか。 ・たぶんあなたCookieファイルの読み方がわかっていないわ。 ・なんでニコニコ動画?  他人様のサイトでテストしちゃダメでしょ。  何かあった場合責任取れるの? Cookieファイルは次のように記述されているの。 --ここから key1 value1 etc etc etc etc etc etc * key2 value2 etc etc etc etc etc etc * key3 value3 etc etc etc etc etc etc * --ここまで-- ちなみにetcは今回に関係ないから省略したわ。 *は区切り文字ね。 複数の値が設定されている場合はここまでが繰り返されるわ。 上記の様なCookieファイルの場合は次のように設定するべきよ。 conn.setRequestProperty("Cookie", "key1=value1"); conn.setRequestProperty("Cookie", "key2=value2"); conn.setRequestProperty("Cookie", "key3=value3");

nekodake
質問者

お礼

回答ありがとうございます。 >・whileのwがない。まあこれはどうでもいいか。 初歩的ミスです。すみませんでした。 >・たぶんあなたCookieファイルの読み方がわかっていないわ。 はい、仰るとおりです。 cookieの扱い方が理解できておらず、手探り状態でした。 >・なんでニコニコ動画?  他人様のサイトでテストしちゃダメでしょ。  何かあった場合責任取れるの? 軽率な行為でした。 ニコニコ動画の動画リストを作成するソフトを作りたかったのです。 以下、疑問点です。 >複数の値が設定されている場合はここまでが繰り返されるわ。 >上記の様なCookieファイルの場合は次のように設定するべきよ。 >conn.setRequestProperty("Cookie", "key1=value1"); >conn.setRequestProperty("Cookie", "key2=value2"); >conn.setRequestProperty("Cookie", "key3=value3"); 上記の設定方法では、"Cookie"というkeysに"key3=value3"が格納されるだけではないでしょうか?("key1=value1"、"key2=value2"は上書きされる?) よろしければ回答して頂きますよう宜しくお願い致します。

すると、全ての回答が全文表示されます。

関連するQ&A