質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
VBScript

VBScript(Visual Basic Scripting Edition)はMicrosftが開発したスクリプト言語であり、Visual Basicのサブセットです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

3回答

8160閲覧

JavascriptのSubmitボタンをVBSでクリック

Shinku

総合スコア10

VBScript

VBScript(Visual Basic Scripting Edition)はMicrosftが開発したスクリプト言語であり、Visual Basicのサブセットです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2019/04/14 02:54

前提・実現したいこと

VBScriptでWEBサイトに自動ログインするプログラムを試しています。

Submitボタンが"input"タグなどで構成されているWEBサイトへのログインはネットの検索などでできました。

しかしながら、ログインボタンがJavascriptで構成されているWEBサイトにログインできません。

ログインボタンがJavascriptでできているWEBサイトにログイン(VBscriptでクリック)する方法を教えていただけないでしょうか?

具体的には、HTMLで記されている下記の部分をVBScriptでクリックしたいです。

<a href="javascript:document.forms[0].submit();">ログイン</a>

発生している問題・エラーメッセージ

該当のソースコード

ログインしたいWEBサイトの構成内容。

<form method="post"> <input type="hidden" name="page1" value="1"> <div id="container"> <!-- メインコンテンツ --> <div id="mainArea"> <div id="header"> </div> <br><br> <!-- ここからログインボタン --> <div class="btnLogin"> <ul class="mb"> <li class="next"><a href="javascript:document.forms[0].submit();">ログイン</a></li> </ul> </div> <!-- ここまでログインボタン--> </div> </div> </form>

試したこと

WEB検索のみで、具体的な試行はできていません。

補足情報(FW/ツールのバージョンなど)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

x_x

2019/04/15 03:01

現状はどのように書いているのでしょうか?
Shinku

2019/04/15 15:30 編集

現状は、Javascriptで構成されたボタンに対してクリック(コーディング)できていません。 下記はIDを取得して、クリック可能なWEBサイトのログイン例です。 ーーーーここからーーーー Set ie = WScript.CreateObject("InternetExplorer.Application","ie_") ie.Navigate("ここにURL") ' ログインしたいサイトのURL ie.Visible = True ' IEを表示させる While ie.ReadyState <> 4 ' 読み込みが終わるまで待つ WScript.Sleep(1000) Wend 'ログインID番号などをセット ie.Document.getElementById("取得したID").Value = "ID番号" WScript.Sleep 1000 ' ログインボタンをクリック ie.document.getelementbyid("ログインボタンのID").click waitIE ie WScript.Sleep 1000
Y.H.

2019/04/15 15:00

vbsのソースを質問を編集し追記お願いします。 質問内容の誤解がなくなると思います。
Shinku

2019/04/15 15:16

申し訳ございません。使い方を理解しておりませんでした。ご指摘ありがとうございます。
guest

回答3

0

自己解決

下記の通り自己解決できました。

VBS

1For Each anchor In ie.document.getElementsByTagName("A") 2If InStr(anchor.innerText, "ログイン") > 0 Then 3anchor.Click 4Exit For 5End If 6Next

ご回答・ご指摘いただけた方、また使い方が分からず、見にくい内容で申し訳ございませんでした。
お時間を割いていただけた方々ありがとうございました。

投稿2019/04/15 15:47

Shinku

総合スコア10

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

これ(javascript:document.forms[0].submit();)と同じことができればいいので
むつかしいこと考えずに、
ie.document.forms(0).Submit
で、できませんかね?

投稿2019/04/15 14:57

Y.H.

総合スコア7914

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Shinku

2019/04/15 15:06

ご回答ありがとうございます。 エラー:書き込みできません。iedocument.forms(,,,),Submit' コード:800A0046 が表示されました。。。
guest

0

vbscriptはIE11でさえ動かないですが大丈夫ですか?

vbscript

1<meta http-equiv="x-ua-compatible" content="IE=10"> 2<script type="text/vbscript"> 3function hoge 4document.forms(0).submit() 5end function 6</script> 7 8<a href="#" onclick="hoge()">ログイン</a> 9<form> 10<input type="text" name="a" value="1"> 11</form>

投稿2019/04/15 00:48

yambejp

総合スコア114572

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Shinku

2019/04/15 14:40

説明が足りず申し訳ございません。 HTMLの中に記述するのではなく、ファイル「※.vbs」を作ってそのファイルを叩いて実行しております。ですので、WEBブラウザ(IE11)で使用するものではございません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問