ご希望の解答はさっぱり思い浮かばないのですが。。。。
もしこういったことが高速で可能だとして、万が一を考えるとセキュリティ上非常に不味いことだと思います。
ブラウザを経由しない方法を探した方がよさげに思います。
加藤です。
やっぱり無理ですかぁ?
Win版のフリーウェアーで、「アメブロペタ自動巡回ソフト」というのがありまして、
実験的にcocoa版でも出来ないかなぁ? と、思ったしだい。
噂では、JavaScriptでできると聴いてましたが、
触った事がないので、さっぱり分からない。
それで、WebKitなどで出来るかな? と、
思って調べてもそれらしい記事はありませんでした。
処で、サンプルソフトの在り処をご存知でしたら、
教えて頂けませんか?
言語は問いませんので。
NSMutableDictionary *headerFields;
NSMutableString *query = [[NSMutableString stringWithCapacity:1] retain];
NSMutableURLRequest *request = [[NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"アクセスするwebページのURL"]] retain];
//POSTメソッドでログインのためのデータを作る
[request setHTTPMethod:@"POST"];
[headerFields setObject:kETGateBaseURL forKey:@"Referer"];
...ほか必要なheaderfieldsをセット
//パスワード、ユーザと口座管理の画面へのログインデータをHTTPBodyにのせる
[query setString:@""];
//かならずキーワード間は&で繋がないとエラー
//どんな文字列を付加するかはアクセスするwebページによって異なるから自己解析必要
[query appendString:@"_ControlID=WPLETlgR001Control"];
[query appendString:@"&_DataStoreID=DSWPLETlgR001Control"];
[query appendString:@"&_PageID=WPLETlgR001Rlgn10"];
[query appendString:@"&getFlg=on"];
[query appendString:@"&_ActionID=loginStock"];
//アカウントとパスワードの設定
< snip >
//HTTPBodyはNSDataの形式に変換しそのサイズはHTTPHeaderに付加しなければならない
NSData *content = [[NSString stringWithString:query] dataUsingEncoding:NSUTF8StringEncoding];
[request setValue:[[NSNumber numberWithLong:[content length]] stringValue] forHTTPHeaderField:@"Content-Length"];
[request setHTTPBody:content];
[[webView mainFrame] loadRequest:[self urlRequestForETGateLogin]];
こんな感じでやります。上のソースは適切に修正しないと動きません。自作プログラムの抜粋なので。