HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2016
0411
NoNameInstgramに自動でログインする方法2解決


NoName

リンク

2016/4/11(Mon) 15:58:44|NO.75204

IEのコンポーネントを利用してInstGramに自動でログイン出来るようにしたいです。

AxobjでInstgramのログインページを表示しようとした所正常に表示されず空白になったので
仕方なくIEの遠隔操作からログインしようと思い以下のコードを書きました。


//ユーザー名を自動で入力 newcom IE, "InternetExplorer.Application" IE->"Navigate" "https://www.instagram.com/accounts/login/" IE("Visible")=1 repeat : wait 10 : if IE("ReadyState")=4 { break } : loop repeat : wait 10 : pDoc = ie("Document") : if pDoc("ReadyState") = "complete" { break }: loop DocumentElement=IE("Document") comres NameElement DocumentElement->"getElementsByName" "username" UserNameRoot=NameElement("item", 0) UserNameRoot("value")="Account Name"

問題なくサイトは表示されましたが、
肝心のgetElementsByNameでusernameが取得出来ませんでした。

ですので分かりません。
どのようにコードを書けばできるようになるでしょうか?
よろしくお願いいたします。



この記事に返信する


inovia

リンク

2016/4/11(Mon) 23:28:42|NO.75208

>AxobjでInstgramのログインページを表示しようとした所正常に表示されず空白になった
たぶん、IEコンポーネントがIE7モードで動作しています。
IE11モードで動作させるには、レジストリを変更する必要があります。
http://hsp.tv/play/pforum.php?mode=all&num=73359#73367

>肝心のgetElementsByNameでusernameが取得出来ませんでした。

//ユーザー名を自動で入力 newcom IE, "InternetExplorer.Application" IE->"Navigate" "https://www.instagram.com/accounts/login/" IE("Visible")=1 repeat : wait 10 : if IE("ReadyState")=4 { break } : loop repeat : wait 10 : pDoc = ie("Document") : if pDoc("ReadyState") = "complete" { break }: loop // JavaScriptで動的に作っている要素なので、対象が生成されるまでループを繰り返す。 repeat DocumentElement=IE("Document") comres NameElement DocumentElement->"getElementsByName" "username" // 要素がないときは NameElement("length") は 0 を返す。 // 今回の場合は、"username" は1要素しかないという決め打ちという名の手抜き実装 if (NameElement("length") == 1){ UserNameRoot=NameElement("item", 0) UserNameRoot("value")="Account Name" break } wait 10 loop



NoName

リンク

2016/4/11(Mon) 23:45:21|NO.75209

>>inoviaさん
掲載されたソースコードを使用した所上手く動作しました。
空白のほうもバージョンアップしたら正常に表示されました。
丁寧なご回答本当にありがとうございました。



ONION software Copyright 1997-2021(c) All rights reserved.