
独学なので、表現がおかしなところは適宜補完して読んでいただけると助かります。
IEでタイトルを取得する場合、
TypeName(window.document)が"HTMLDocument"であるかチェックし、
window.document.Title
で取得できてましたが、これをブラウザ「FireFox」を対象として同じことをしたい場合、
どのようにしたらよいでしょうか。
検索してもFireFoxで指定URLを開くといったものしか見つけられません。
具体的な方法を回答で投稿していただくのでも、
参考となる記事のあるURLでも構いませんので、
教えてください。
No.3ベストアンサー
- 回答日時:
-第2報-
結論的なものではないのですが、Excel用の情報としては、GitUb のFlorentbr という所に集約されるというそうです。
https://florentbr.github.io/SeleniumBasic/
この中に、プロジェクトとして、
A simple and quick way to drive Firefox, IE, Chrome, Opera and PhantomJS (headless webkit). と、銘を打っているので、まず、期待するしかないようです。ただし、Excel にPython が加わってくると事情が大幅に変わってしまいます。
SeleniumBasic v2.0.9.0
最終リリースは、florentbr florentbr released this on 3 Mar 2016
開発予定ではあるけれども、未だ、達成はしてないようです。
----
ADO ON としては、Selenium IDE (初期の頃のSeleniumですが、最終更新日は、2018/10/15になっています。)SeleniumIDE → Selenium-VBA →SeleniumBasic と変遷してきています。
https://github.com/SeleniumHQ/selenium-ide
説明
Selenium IDE is an integrated development environment for Selenium tests. It is implemented as a Firefox extension, and allows you to record, edit, and debug tests.
ただし、これは、言語としては、Javascript/Python 辺りだ思われます。
FireFox は、いままでのブラウザと大幅に様変わりましたし、私自身は、FireFox は、テレビからYouTubeにアクセスしています。
ちなみに、Google Chrome のほうが、処理しやすいと思います。
'//
Sub ChromeControl1()
Dim driver As New ChromeDriver '要更新 Latest:2.43 support Chrome v69-71
'https://sites.google.com/a/chromium.org/chromedr …
Dim obj As Object
driver.Get "https://www.goo.ne.jp/"
Set obj = driver
With obj
AppActivate "Microsoft Excel"
MsgBox .Title & " : " & .url
End With
End Sub
'//
いろいろ調べて頂き、ありがとうございました。
質問投稿の際に、FireFoxで、と書いてましたが
元はIE以外のブラウザでというところでもありましたので、
Chromeno方でも試してみます。
質問投稿して、最初に回答頂いてからでも4日ですね。
時間を割いて調べ検証して頂き、感謝します。
ベストアンサー10個分くらいお贈りした気持ちです。
No.2
- 回答日時:
>ExcelからIEを操作してたものをFireFoxでも動作するようにしたかったのですが、
>一筋縄ではいかない以上に複雑っぽいですね。
FireFox Driver のLatest Version として、geckodriver.exe が使えるようですが、まだ、VBAには組んでいません。(果たして組めるものかもわかっていません)
https://github.com/mozilla/geckodriver/releases
以下は、FireFox は、そんなに簡単にはいきませんね。Browser の中でも、一番汎用性が高いので、ひとつをかえるというわけにはいきません。
https://qiita.com/jnchito/items/ab23c925a6a78345 …
なお、No.1のWin32APIは、取れることは取れるのですが、画面が変わっても更新しないので、今の所はボツです。
No.1
- 回答日時:
こんにちは。
>検索してもFireFoxで指定URLを開くといったものしか見つけられません。
方法にもよるのですが、FireFox をコントロールできれば、Webサイトのタイトルなどは取れるのですが、それができません。
結局、白旗を挙げることになりそうなのですが、本日、半日掛けて頑張ってみたものの、FireFoxは、バージョンアップが目まぐるしいので、ぜんぜん、他のツールが追いつかないというのが実情なのです。おっしゃっているのは、Windowからみると、それはTitle ではなく、Caption なのですが、一般のアプリなら、私の書いたコードで十分に取れます。なお、1のSeleniumの話は、GitHub が中心になっています。FireFox は、昔と様子も変わりましたので、単なるブラウザとは言えないツールになりつつあるようです。
能書きはともかく、試した方法を書けば、誰か他にアトバイスが得られるかもしれません。
1. いわずと知れた、SeleniumBasic で、イントールはしました。
ひところは、Selenium と他のブラウザとはバランスがあっていたのですが、Firefox は、今、62.0.3です。Driver は、40台の頃に動いていたもので、FireFox は、Timeout を起こしてしまいます。
//
''SeleniumBasic は、最新のものに変えましたが、Driver は、変わってはいません。
''Driver は、探して入れ直さないといけないのですが……。
Dim obj As Object
Set driver = CreateObject("Selenium.FirefoxDriver")
driver.Get "https://www.goo.ne.jp/", 60 ''←60はタイムラプス
//
TimeOut で失敗!(最初から諦めムードが漂っていました)
2.ならば、Win32Api はどうか、(もはや、全てを諦めてはいるが)
Const clsNAME As String = "MozillaWindowClass"
Dim hWnd As Long
Dim cap As String
hWnd = FindWindow(clsNAME, vbNullString) '←ここは取れています。
cap = String(100, Chr(0))
GetWindowText hWnd, cap, Len(cap)
msg = Left(cap, InStr(1, cap, Chr(0)) - 1)
しかし、cap の中は、空でした。 cap は、Caption の略
3.では、WMI ではどうか、
Set oLocator = CreateObject("WbemScripting.SWbemLocator")
Set oService = oLocator.ConnectServer
Set oClassSet = oService.ExecQuery("Select * From Win32_Process")
For Each oClass In oClassSet
Next
今の所は、失敗しているけれども、可能性はあります。でも、もはや、VBAのメリットも何もないです。
以上が、私からの第一報です。
回答頂くまでSeleniumBasicという言葉にすら辿り着いてませんでした。
時間を割いていろいろ検証して頂きありがとうございました。
ExcelからIEを操作してたものをFireFoxでも動作するようにしたかったのですが、
一筋縄ではいかない以上に複雑っぽいですね。
自分でももう少し頭を捻ってみます。・・・というかほぼ検索頼りなんですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) セルの値をグーグルで検索するエクセルVBAについて! 2 2022/08/01 21:41
- Excel(エクセル) 「Excelのオプション」の「ユーザーインターフェイスのオプション」の設定値をVBAで取得したい 1 2022/07/31 23:49
- Firefox(ファイヤーフォックス) Firefoxでグーグルの検索画面が変です 2 2022/09/20 19:25
- PHP PHPを使って、別サイトの一部を取得して表示したいのです。。 1 2023/01/18 21:45
- Firefox(ファイヤーフォックス) google検索の画面だけ表示できない時がある 2 2022/12/14 19:05
- その他(ブラウザ) EdgeのキャプチャーにFirefoxのアイコンもついてくる 1 2022/05/30 14:25
- ホームページ作成・プログラミング chromeでhttpdを使うと 2 2022/03/23 10:54
- Chrome(クローム) Chromeで複数タブを開いた状態で閉じ、再度開いた場合のタブの回復は? 2 2022/04/02 01:44
- その他(ブラウザ) Win11でブラウザでのネットブラウズができなくなった 4 2022/12/05 18:03
- Excel(エクセル) VBA : スクレイピングできない 4 2023/05/12 22:26
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELで「WEBオプションの対象...
-
ExcelのハイパーリンクをIE以外...
-
パソコンの画面の左上の青い渦...
-
何度ログインしても「不正な操...
-
保存したgif画像を見る方法
-
Chrome タブを100開いてもメモ...
-
任意のURLへ一定時間ごとに自動...
-
PDFはAcrobatに関連付けられて...
-
社会保険料通知データの閲覧方...
-
好きな人が視界に入るとフリー...
-
グーグルアース 軽くする設定
-
PCで、ヤフーの広告をログイン...
-
書き込みミスをしたCD-RWは再...
-
ブラウザーEdgeでGoogleマップ...
-
PDFのリンク先Webページを別窓...
-
N504isのアドレス帳にメモは?
-
Lotus NotesのURLリンクをIEかF...
-
ブログやYouTube アドブロック...
-
表示ページがブラウザウインド...
-
FacebookのMessengerで文字が入...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
保存したgif画像を見る方法
-
EXCELで「WEBオプションの対象...
-
パソコンの画面の左上の青い渦...
-
何度ログインしても「不正な操...
-
ExcelのハイパーリンクをIE以外...
-
ブラクラらしいのですが。。。
-
グーグルがブラウザを作る意味...
-
見たいんだけど見れない・・・(...
-
ブラウザごとのCSSの表示
-
PS2以外のゲーム機のブラウ...
-
英辞郎が使えなくなりました
-
JavaScriptのガーベ...
-
AOLのメール、PCで確認すると全...
-
Mozillaについて
-
Excel VBA でFireFoxのタブ名(...
-
DropBoxで「ブラウザを更新せよ...
-
XPERIA Z5 を使っているのです...
-
わからない(PC)
-
中国系サイト「hao123」
-
Twitterが表示されない…
おすすめ情報