私は誰かがこれを手伝ってくれることを願っています。私はこれをしばらく試してきましたが、さまざまなバリエーションがあり、うまくいくようには見えません。
https://login.three.ie/ にログインして*/My_account_balanceから口座残高を確認する方法をスクリプト化しようとしています
私はあらゆる種類のwgetコマンドを試しましたが、私が読んだことから、curlはこのタスクを実行できる可能性が高くなります。
私はここからstackoverflowを含め、オンラインで遭遇したバリエーションを試しましたが、何も機能しないようです。
これが私が試した最後のものです:
curl -X POST -c cookies.txt -u "Uern@me:P@ssw0rd" https://login.three.ie/
これにより、ここにcookieファイルが保存されます。
$ cat cookies.txt
Netscape HTTP Cookie File
#http://curl.haxx.se/docs/http-cookies.html
This file was generated by libcurl! Edit at your own risk.
HttpOnly_login.three.ie FALSE / FALSE 1433988274
laravel_session eyJpdiI6IkFZWmxvZ2oyXC9NNGVIbHVpejZwRWp3PT0iLCJ2YWx1ZSI6Imxkd25UKzBoMldiQlhYZVJnVUpuNUVsblZ1cGJYZWcwM2E1bTtIWHRiQ2pwV0VwemJ4NFlYcDlzTndSeFRNanpwdDhMMTIrS2RGZGdGd0RNZU1yREJ3PT0iLCJtYWMiOiI0NWUwYzc1TY4ODI3ZmY3ODY5NjliODkxODMyODIzMjQwNmNkNjljNTE2NzQxNmQ4MzhhNDljNTdjM2QwZGY1In0%3D
しかし、Cookieを再利用しようとすると、リダイレクトまたは何かがあるように見えます。
$ curl -b cookies.txt https://my3account.three.ie/My_account_balance
<html><head><title>302 Moved Temporarily</title></head>
<body bgcolor="#FFFFFF">
<p>This document you requested has moved temporarily.</p>
<p>It's now at <a href="https://sso.three.ie/mylogin//login?auth-
required=seamless&service=https%3A%F%
2Fmy3account.three.ie%2FMy_account_balance">https://sso.three.ie/mylogin//login?auth-required=seamless&service=https%3A%2F%2Fmy3account.three.ie%2FMy_account_balance</a>.</p>
ここで何が起こっているのか理解できません。誰が何が問題になっているのか、あるいはこれを改善する方法を知っている人はいますか?
ありがとう
最初にログインページにリダイレクトすることで、Cookieに保存されているセッションをWebサイトが認証している可能性があります。次に、ログインページは、リダイレクト中に「サービス」パラメータとして設定された適切なページにリダイレクトされます。
Curlはデフォルトではリダイレクトを追跡しません。 -L
オプションを使用してこれをオーバーライドします。
$ curl -L -b cookies.txt https://my3account.three.ie/My_account_balance
-L
curlがリダイレクトに従うようにするためのオプション。