2017年08月 / 07月≪ 12345678910111213141516171819202122232425262728293031≫09月

インフォメーション

FC2ブログで画像等を一括アップロードするソフトを地味に配布してます。
FC2ブログ用ファイルアップロードの最新版はこちら
(ベクター)FC2ブログ用ファイルアップロード

--.--.-- (--)

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


 |  --:--  |  スポンサー広告  |  Top↑

2008.02.18 (Mon)

Sleipnirでハンゲーム自動ログイン - UWSC

Sleipnirでハンゲームにログインするスクリプト。
"userID""password"は自分のハンゲームIDとパスワードに変更して使用してください。


USER_ID = "userID"
PASSWORD = "password"

pnir = CreateOLEObj("Sleipnir.API")

// 新しいタブを開く
docID = pnir.NewWindow("http://www.hangame.co.jp/", true)
// 開き終わるまで待つ
While pnir.IsBusy(docID); SLEEP(1); WEND

// ドキュメントオブジェクト
Doc = Nothing
REPEAT
  // ドキュメントオブジェクト取得
  SLEEP(1)
  Doc = pnir.GetDocumentObject(DocID)
UNTIL Doc <> Nothing

SLEEP(1)

// ユーザーID入力
ifb Doc.getElementsByName("loginform").length > 0
  Doc.getElementById("strmemberid").value = USER_ID
  Doc.getElementById("strpassword").value = PASSWORD
  
  // ログインボタンを探す
  imgs = Doc.getElementsByTagName("img")
  for i = 0 to imgs.length - 1
    img = imgs.item(i)
    ifb POS("btn_login.png", img.src) > 0
      img.click
      break
    endif
  next
endif


 |  02:21  |  UWSC  |  トラックバック(0)  |  コメント(12)  |  Top↑

Comment

●はじめまして

UWSCを初めて使った時にこのブログを拝読させていただきました。
参考にさせていただいたおかげで、ほぼ希望通りにできるようになり大変感謝しております。

しかし、一点だけどうしても分からない部分があるのです。
Sleipnirにて新しいタブを開き、そのタブをリロード(KBD(VK_F5))の後に各種操作を行っているのですが、タスクバーに収めたままでバックグラウンドで操作する為に、”IE.refresh”のようにSleipnirでKBD(VK_F5)以外の方法でリロードすることはできないでしょうか?

大変恐縮ですがご教示いただけたらと思います。
JIN |  2011.04.21(木) 01:51 |  URL |  【コメント編集】

●Re: はじめまして

初めまして。コメントありがとうございます。
> Sleipnirにて新しいタブを開き、そのタブをリロード(KBD(VK_F5))の後に各種操作を行っているのですが、タスクバーに収めたままでバックグラウンドで操作する為に、”IE.refresh”のようにSleipnirでKBD(VK_F5)以外の方法でリロードすることはできないでしょうか?

調べてみたら、記事の変数を素に書くと
window = pnir.GetWindowObject(DocID)
window.location.reload(true)
↑でバックグラウンドでもリロードできるっぽいです。
上野メモ |  2011.04.21(木) 03:48 |  URL |  【コメント編集】

●ありがとうございました

こんなに早くお答えいただけるとは・・、しかも、お調べいただいたようで大変感謝しております。
先程、試したところバッチリ希望通りの動きでした。

それと、お礼といってはなんですが、まだ口内炎でお悩みでしたら、ハチミツを患部に塗ると治りが早いですよ。
よかったら試してみてくださいね。
JIN |  2011.04.21(木) 22:32 |  URL |  【コメント編集】

●Re: ありがとうございました

報告ありがとうございます。無事動いてよかったです。
調べたって言ってもググっただけなんですけどねw
記憶力があまりないので、何するときでも常にググりながらやってますw
口内炎は今はなんとかおさまったところです。
でもまたすぐできると思うので、次回できたら蜂蜜塗ってみますね。
上野メモ |  2011.04.22(金) 15:28 |  URL |  【コメント編集】

●基本的に解らないので教えてください。

2ちゃんでSleipnirで自動ログインの話でここを教えてもらいました。
色々と解んないので教えて下さい。

pnir = CreateOLEObj("Sleipnir.API")
なんですが、なんでAPIなんでしょう?そもそも、APIもよく解らない。
Sleipnir.exeとかならまだしも。他のサンプルを見ると、色々バラバラの様。
いったい、何を調べたら、CreateOLEObjの元が判るのですか?

docID = pnir.NewWindow("http://www.hangame.co.jp/", true)
ハンゲームのサイトを新たに開いてそのIDを取得する メソッド? か何かみたいなんですが。私自身、オブジェクト指向言語を使って無いので、用語が曖昧ですみません。
私の場合は、既にウインドウ(ってか、タブだよね?)は開かれてるので、多分、getwindowみたいなのを使うんだと思うのですが。
OLEオブジェクトのそういった、ピリオド付けて云々の部分に(ここではNewWindow)どのようなものが有るのか、一覧表にたどり着けません。
いつも思うんだけど、パスカルのレコード型の変数みたいな感じなんだけど、どう定義されてるのか調べまくらないと解らないオブジェクト指向型言語ウゼー。

ココを見てねと言うサイトが有ったら教えて下さい。
たかはる |  2012.07.05(木) 22:42 |  URL |  【コメント編集】

●Re: 基本的に解らないので教えてください。

初めまして。コメントありがとうございます。

Sleipnir.apiについては下記のURLが参考になります。
http://www.sleipnir-wiki.jp/index.php?Sleipnir.API%20%A5%EA%A5%D5%A5%A1%A5%EC%A5%F3%A5%B9
UWSCのCreateOLEObjはVBのCreateObjectと同じように使えるので、↑のCreateObjectの記述を参考にしました。
オブジェクトのピリオドつけて云々部分は、「リファレンス」とか「プロパティ」とか「メンバ一覧」で検索すれば出るような気がします。
出なかったらあきらめて英語のリファレンスを探します。

> Sleipnir.exeとかならまだしも。他のサンプルを見ると、色々バラバラの様。
> いったい、何を調べたら、CreateOLEObjの元が判るのですか?
sleipnirに関しては「Sleipnir.API」で統一されてるかな。
上野メモ |  2012.07.06(金) 17:03 |  URL |  【コメント編集】

●ありがとう御座います

質問が愚痴っぽく成っちゃってて申し訳なかったです。
タモリ倶楽部見終わったら、件のサイトをみてみます。
ありがとうございました。
たかはる |  2012.07.07(土) 00:27 |  URL |  【コメント編集】

度々すみません。
pnir = CreateOLEObj("sleipnir.API")
の部分で
COM_Error:クラス文字列が無効です
と言うエラーが出ます。
物は試しで、VBSでやらせてみても、
ActiveXコンポーネントはオブジェクトを作成できません。
と出ました。
何か、心当たりありませんか?
検索しても、該当する対策が見つからず困りました。
ちなみに、IEなら通るようです。
IE = CreateOLEObj("InternetExplorer.Application")
で、エラーを吐きません。
たかはる |  2012.07.07(土) 21:29 |  URL |  【コメント編集】

●Re: タイトルなし

sleipnirのオプション設定にある「スクリプトによるクライアントの操作を許可する」にチェックが入ってないじゃないでしょうか。
ためしにsleipnir3をインストールしたらその設定がどこにあるのか見つからなかったので、sleipnir2をインストールしてチェック入れてみたらちゃんと動きました。
上野メモ |  2012.07.08(日) 01:28 |  URL |  【コメント編集】

そんな設定が有るとは思いもしませんでした。
色々、ややこしいですね。
どもです。
今までのuwscの使い方は、単にマウスを動かしたりキーボードを押させたりするだけの無理やりなやり方しかしてなくて、その様な設定無視状態でした。

ただ、ハンゲームのサイトが開きはするものの、ログインには至りませんでした。
そうそう、使ってるのはSleipnir2の方です。
たかはる |  2012.07.08(日) 17:29 |  URL |  【コメント編集】

●Re: タイトルなし

sleipnirだけの特殊な設定なんで気づきにくいですよね。
ちなみにhttp://www.hangame.co.jp/ のページにログインフォームがなくなってたので、
この記事のログイン処理はもう使えないみたいですね。
ハンゲぜんぜんやってなかったから気づかなかったw
上野メモ |  2012.07.08(日) 23:23 |  URL |  【コメント編集】

ああ、ページデザインが変わってしまっていたのですね。
了解です。
取り敢えず、こんな手法が有るんだと言うことで、もう少しいじってみます。
どもです。m(__)m
たかはる |  2012.07.09(月) 07:00 |  URL |  【コメント編集】

コメントを投稿する

URL
コメント
パス  編集・削除するのに必要
非公開  管理者だけにコメントを表示
 

Trackback

この記事のトラックバックURL

この記事へのトラックバック

 | BLOGTOP | 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。