読者です 読者をやめる 読者になる 読者になる

VB.netでSelenium

準備編

プロジェクトでの準備

  • 参照の追加をする
    • ダウンロードしたSeleniumのモジュールの中を解凍して、プロジェクトのフォルダのどこかに置く
    • Visual Studio のメニューから「プロジェクト → 参照の追加」を選択します。
    • 「参照マネージャ」ダイアログが開くので、展開したファイルのうち、以下をまとめて参照します。
      • Selenium.WebDriverBackedSelenium.dll
      • ThoughtWorks.Selenium.Core.dll
      • WebDriver.dll
      • WebDriver.Support.dll

サンプルコード

Imports OpenQA.Selenium
Imports OpenQA.Selenium.PhantomJS

Module Module1

    Sub Main()

        Dim WebD As IWebDriver

        WebD = New IE.InternetExplorerDriver()

        SearchGoogle(WebD) 

        WebD.Close()
        WebD.Quit()
        WebD = Nothing

    End Sub

   Sub SearchGoogle(aObj As IWebDriver)

        aObj.Url = "https://www.google.co.jp"

        Dim element As IWebElement
        element = aObj.FindElement(By.Name("q"))

        element.SendKeys("Cheese!")
        element.Submit()

    End Sub
End Module

IE で「NoSuchElementException」エラーになってしまう場合

IEDriverServer を正しい位置に配置し、サンプルコードにも問題が無いのに IE でのみ、「NoSuchElementException」が発生する場合があります。この場合は IE のインターネットオプションからセキュリティタブを選択し、全てのセキュリティゾーンに対して「保護モードを有効にする」へチェックしておきます。

f:id:shikaku:20170224173417p:plain

HTC Viveが認識しなくなった際の対応方法

USB3.1接続からUSB2.0接続へ変更する
HTC ViveのUSBドライバを削除する
ドライバを再インストールする
ダイレクトモードになっているか確認する
ケーブルをディスプレイポートケーブルからHDMIに変更する
CPU内蔵のGPU(マザーボードから出力)を利用しない
OSをWindows10にクリーンインストールする
Windowsのユーザー名を半角英数に変更する
デュアル(マルチ)モニタを利用しない
グラフィックドライバを最新にする、SLIを一時的に無効にする
ASUS AI Suiteを無効化する


ネタ元

IEがinput type=imageのvalueを無視する件

はまった・・・。まさかIE限定とは。

inputタグにおいて、type="image"の場合、IEでは、先ほどの「back=戻る」や「send=送信」がパラメータとして渡されないからです。。(valueの値が無視される)

これはわりとメジャーなIEのバグ?とはいえ、最初に出くわしたときは、気がつくまで結構なハマりどころだと思います。

ネタ元

動画ゲッター

動画ファイルを自動的に検知して、ダウンロードすることが出来るGoogleChrome拡張です。
閲覧しているサイトに動画ファイルが存在している場合に、お知らせをしてくれます。
リファラーとユーザーエージェントの書き換えを行いダウンロードすることもできます。
さまざまな動画形式に対応しています。

動画を含むページを閲覧すると
f:id:shikaku:20170125103308p:plain

アクションボタンに通知されます
f:id:shikaku:20170125103311p:plain

ネタ元