タイトルが不適切な場合は申し訳ありません..このウェブサイトに登録した gmail ID とパスワードを使用して、ウェブサイト" http://www.opinionworld.in "に自動ログインする TCL コードを探しています。
その後、コードは my-account タブをクリックし、このアイコンの Web サイトをクリックすると、 「http://dkr1.ssisurveys.com/projects/plist? psid=94mUddoHeetivfuUO0ZREg &subpanelid=2&css=http%3A%2F%2Fd1g6vijl2fr6nr.cloudfront.net%2Fweb%2FsourceStyles%2Finvo%2Fstyle.css」とページが表示されます * 「プロファイルを更新してください」これは、実施する調査がないため、代わりにプロファイルを更新するよう Web サイトから指示された場合です。私が懸念している別の側面を見てください調査が利用可能な場合、「TAKE A SURVEY」をクリックすると、イニシャルが「ORD-79558-KJTP」または「ORD-79350- 」の正規表現で始まる利用可能な調査が表示されますYTBQ」。*ここでの私の懸念は、コードが私のGmail IDパスワードでこのWebサイトに自動的にログインし、**「TAKE A SURVEY」を選択し、利用可能な調査を「ORD-79558-KJTP」または「ORD-79350-YTBQ」として読み取る場合です。その後、コードは件名に「ORD-79558-KJTP」のような利用可能な調査コードを含む私の gmail ID にメールを送信し、メールは FROM:me から TO:me に送信する必要があります。この Web サイトへのログイン プロセスと、さらに検索を行うには 15 分間隔が必要です。ご回答いただきありがとうございます。さらに入力が必要な場合は更新してください。
2 に答える
自動ログイン...これには、私が取り組んでいるがまだ完成していない Cookie 処理を行うためのコードが必要です。(これまでのところ、部分的な仕様と、約 80% が調理されたものを含むSCM ブランチがあります。) 理論的には、現在の http パッケージで Cookie の処理を行うことができますが、かなりの作業が必要になります。 Cookie の仕様はまったく簡単ではないため、多くの作業が必要です (実際に試してみないとわからない部分があります)。
しかし、それはタスクを実行するために必要なことの一部にすぎません (私には非常に複雑に思えます!)。http+cookie の処理とそれを使用したサイトへのログインは、それ自体が主要なタスクです。おそらく、代わりに数歩後退して、このタスクを達成する別の方法があるかどうかを確認する必要がありますか? 代わりに、サイトのサービスにアクセスするための REST API はありますか? または、他の誰かが別の言語で自動化ライブラリを作成しましたか?
Donal が言ったように、API を使用することが最善の選択肢ですが、常に可能であるとは限りません。
Cookie ベースの認証 (以前に Tcl で行った) が本当に必要な場合、それは可能ですが、簡単ではありません。私は通常、次のパスに従います。
- firebug (Opera と Chrome にはそのようなものが組み込まれています) のようなブラウザー プラグインを使用して、シナリオをプレイします。ネットワークパネルを見て、これをプレイするたびに異なる部分を見つけてください。(ログインなどの前に Cookie を削除することをお勧めします。)
http::geturl
同じ結果を得るために使用してみてください。特にいくつかのヘッダーを設定する場合があります。http パッケージの Cookie に関する詳細については、Tcl/Tk wiki on Cookiesを参照してください。これは Cookie を完全に処理するものではありませんが、誰がそうしなければならないと言いましたか? 異なる結果が得られた場合は、何か間違ったことをしています。(一部のサイトでは、特定のユーザー エージェントが許可されていないため、機能しなかった理由を突き止めるのは非常に難しい場合があります)- 結果からさまざまなものを抽出してみてください。正規表現、いくつかのヘッダー、さらにはtDOMを使用する必要がある場合があります。
試行錯誤の連続ですが、可能です。
最終的に目的の結果が得られたら、メールを送信できます。Tcl を使用してメールを送信するのはそれほど難しくありません。(特に、Tcl/Tk wikiに) チュートリアルがあります。