具体的には、さまざまなStack Exchangeサイトのユーザープロファイルから特定のページをダウンロードできるようにしたいと考えています。ただし、これcron
はコマンドラインから、解析可能な形式で(ジョブを使用して)自動的に行いたいと思います。私はこれにLinuxを使用することを好みますが、必要に応じてMacまたはWindowsマシンにアクセスできます。
理想的には、WgetやcURLなどのツールを使用してページをフェッチしたいと考えています。どうすればログインをすり抜けられるかわかりません。Firefox経由でログインし、関連するCookieをエクスポートし、その--load-cookies
オプションを使用してWgetにインポートできることを示唆する提案を見てきました。たとえばこことここ。これはログインしたばかりの場合は機能しますが、しばらくすると機能しません。IDトークンを更新する必要があるためだと思います。
したがって、SUにログインしてCookieをエクスポートした直後に、次のことができます。
wget --load-cookies cookies.txt \
https://superuser.com/users/151431/terdon?tab=responses
数分後、404エラーが発生します。
wget -O ~/stack/$(date +%s) --load-cookies ~/cookies.txt \
https://superuser.com/users/151431/terdon?tab=responses
--2013-08-06 04:04:14-- https://superuser.com/users/151431/terdon?tab=responses
Resolving superuser.com (superuser.com)... 198.252.206.16
Connecting to superuser.com (superuser.com)|198.252.206.16|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2013-08-06 04:04:15 ERROR 404: Not Found.
では、コマンドラインからOpenID対応のWebサイトに自動的にログインするにはどうすればよいですか?
PS。私の質問は実際にはコマンドラインの側面についてであり、問題のWebページの実際の詳細ではないので、これはWebアプリケーションよりもこちらの方が適していると思います。どんなソリューションでもすべてのOpenIDサイトに適用できると思います。