「FirefoxからセッションIDを取得する」の編集履歴(バックアップ)一覧はこちら
FirefoxからセッションIDを取得する - (2007/11/04 (日) 23:59:02) の最新版との変更点
追加された行は緑色になります。
削除された行は赤色になります。
FireFoxはIEと同じようにセッションIDをクッキーファイルに書き出している。その位置はプロファイルフォルダである。詳しくは[[Firefox Help: プロファイルの管理>http://www.mozilla-japan.org/support/firefox/profile]]を参照のこと。このフォルダにあるcookies.txtファイルがセッションIDに記述される。
例えばWindows XPではプロファイルフォルダはデフォルトの場合、C:\Documents And Settings\username\Application Data\Mozilla\Firefox\Profiles\xxxxxxxx.default\となる。usernameとxxxxxxxxの部分は環境によって異なる。Application DataのパスはWindowsのAPI・SHGetSpecialFolderLocationを使って取得することが出来る。Profiles\xxxxxxxx.default\の部分が正確にはどうなっているのかについては、Firefoxフォルダにあるprofiles.iniの中に記述されている。
profiles.iniにはProfile0というセクションがあり、その中のPathキーには必要なProfiles\xxxxxxxx.default\の値が記録されている。
>[General]
>StartWithLastProfile=1
>
>[Profile0]
>Name=default
>IsRelative=1
>Path=Profiles/xxxxxxxx.default
+[[ニコニコ動画から動画をダウンロードする]]
++ニコニコ動画にアクセスするためのセッションIDを取得する
+++[[IEからセッションIDを取得する]]
+++&bold(){FirefoxからセッションIDを取得する}
+++[[独自にログインしてセッションIDを取得する]]
+++[[セッションIDの有効性を確認する]]
++[[目的の動画のurlを突き止める]]
++[[動画をダウンロードする]]
+[[ダウンロードした動画を再生する]]
----
FireFoxはIEと同じようにセッションIDをクッキーファイルに書き出している。その位置はプロファイルフォルダである。詳しくは[[Firefox Help: プロファイルの管理>http://www.mozilla-japan.org/support/firefox/profile]]を参照のこと。このフォルダにあるcookies.txtファイルがセッションIDに記述される。
例えばWindows XPではプロファイルフォルダはデフォルトの場合、C:\Documents And Settings\username\Application Data\Mozilla\Firefox\Profiles\xxxxxxxx.default\となる。usernameとxxxxxxxxの部分は環境によって異なる。Application DataのパスはWindowsのAPI・SHGetSpecialFolderLocationを使って取得することが出来る。Profiles\xxxxxxxx.defaultの部分が正確にはどうなっているのかについては、Firefoxフォルダにあるprofiles.iniの中に記述されている。
profiles.iniにはProfile0というセクションがあり、その中のPathキーには必要なProfiles\xxxxxxxx.defaultの値が記録されている。
>[General]
>StartWithLastProfile=1
>
>[Profile0]
>Name=default
>IsRelative=1
>Path=Profiles/xxxxxxxx.default
iniファイルのデータの読み込みはWindowsのAPI・GetPrivateProfileString等を利用するとよい。ここまででクッキーファイルの完全なパスが取得できたことになる。
FirefoxのクッキーファイルはIEのそれと異なり、すべてのサイトのクッキーを1ファイルにまとめて記述してある。説明をするより、実際のファイルの内容を見たほうが遙かに分かりやすい。
># HTTP Cookie File
># http://www.netscape.com/newsref/std/cookie_spec.html
># This is a generated file! Do not edit.
># To delete cookies, use the Cookie Manager.
>
>.google.co.jp TRUE / FALSE xxxxxxxxxx PREF ID=xxxxxxxxxxxxxxxx:TM=xxxxxxxxxx:LM=xxxxxxxxxx:S=xxxxxxxxxxxxxxxx
>.youtube.com TRUE / FALSE xxxxxxxxxx LOCALE_PREFERENCE xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx==
>.nicovideo.jp TRUE / FALSE xxxxxxxxxx __utma xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>.nicovideo.jp TRUE / FALSE xxxxxxxxxx user_session user_session_xxxxxx_xxxxxxxxxxxxxxxxxxx
折り返しの都合でそれぞれ2行ずつになっているように見えるかも知れないが、実際にはそれぞれのデータは1行に1つ記述される。ここですべきことは、
+各行をそれぞれ読み込み
+タブ文字で複数(7つ)のトークンに分割し
+最初のトークンが.nicovideo.jpであるかを調べ
+もしそうなら5番目のトークンがuser_sessionであるかを調べ
+もしそうなら6番目のトークンがセッションID
というようにしてセッションIDを取得する。
IEの場合と同様であるが、ここで取得したセッションIDが有効かどうかは実際にニコニコ動画にアクセスしてみないとわからない。確認するためには[[セッションIDの有効性を確認する]]を参照のこと。
表示オプション
横に並べて表示:
変化行の前後のみ表示: