質問
い自動化プロセスを伴うウェブサイトを使用していますので、ログインです。私のキャプチャデータの一部のページにログインページです。
しか画面を掻き通常のページが、その背後に安全サイトです。
- できることにして行わなければならない.純WebClient。
- そこまでは、自動的にログイン?
- 方法を教えてください続ログインし、他のページ?
解決
一方がより自動化するブラウザ--すWebClientるだけでは推測するを参照しWebClientます。います。
二つの主要なポイント:
- ある特約https関連WebClient-期待どおりに動作します
- クッキーは一般的に使用を認証--る必要がありまキャプチャーを再生してい
こちら歩い。
- を取得し、インに、クッキーにします。
- Xpathを使用、HtmlAgilityPackの"input type="隠れフィールドの名前と値です。
- ポストへのログイン形式の行動とユーザー名、パスワードを隠しフィールドの値を要求す。などのクッキーの要求ンターフェースの通称です。再度、捕獲したり、クッキーにします。
- 取得したいページにあらためのクッキーの要求ンターフェースの通称です。
ステップ2では、まろやや複雑な方法を自動化、ログインします。通常、ポストユーザー名とパスワードに直接知られるログインアクションな初期形または中継を隠します。一部の地形の検証(異なる分野からの検証)の形になってない方法です。
HtmlAgilityPack である.ネットライブラリーでいつもの形htmlをXmlDocumentできますのでXPathできます。かなり便利なんですよね。
最後に、状態の形式に依存してお客様のスクリプトを変更フォームの値を提出する前に.る必要がある場を模擬するための
使用ツールのhttp交通のためこの種の作業は非常に役に立-私のおすすめ ieHttpHeaders, フィドラーズ, や 開いているのがfirebug 純額"タブ参照).
他のヒント
簡単にシミュレーユーザー入力します。お問い合わせくださいフォームのウェブページからプログラムにより送信後\取得要求めます。
典型的なログイン形で次のように記述されています。
<form name="loginForm" method="post" Action="target_page.html">
<input type="Text" name="Username">
<input type="Password" name="Password">
</form>
に送ることができpostリクエストを行うように提供するウェブサイトの値はユーザー名とパスワードです。その後にお送り請求がウェブサイト、通常のリダイレクトされます一部のページです。ご承認情報管理のセッション\ンク。だ象のお客様を維持できるウェブセッション\理解しクッキーでアクセスできるよう、これまでの保護されます。
していないのからお問いう言語につ\枠組みといえるものです。例えば、あの枠組みの画面に掻き(ログイン機能をされている場所として知られperl- WWW::機械化
ことに注意してくださいできな問題にした場合は、そのまねログイン用javaスクリプトなどぷ.
ありがとうございます。解明?のWebClientクラスがありませんのHTTPUnit/Java?
その場合、セッションは自動的に保存されます。
でなければならないからお問いWebClientクラス(言語)を参照しています。
った場合には、Javaランタイムで利用できますApache HttpClientクラスここでの例を書いた用Groovyにアクセスする美味しいAPI over SSL:
def client = new HttpClient()
def credentials = new UsernamePasswordCredentials( "username", "password" )
def authScope = new AuthScope("api.del.icio.us", 443, AuthScope.ANY_REALM)
client.getState().setCredentials( authScope, credentials )
def url = "https://api.del.icio.us/v1/posts/get"
def method = new PostMethod( url )
method.addParameter( "tag", tag )
client.executeMethod( method )