Selenium是一種非常流行的瀏覽器和網頁自動化技術,開發人員可以使用C#、Java、Python等語言來操作Chrome、Firefox等瀏覽器。
VBA語言可以直接操作訪問Microsoft Internet Explorer(IE)瀏覽器,Chrome等瀏覽器有著速度快等優勢,使用群體非常多。習慣用VBA程式設計的人們如何自動操作IE以外的瀏覽器呢?
在網上大家可以找到一個SeleniumBasic v2.0.9.0的軟體,作者是Florentbr。在電腦中安裝了該軟體後,可以在VBA、VBS、VB6等Basic系列的語言中呼叫Selenium的功能。
然而,在很多電腦上會出現“無法建立物件”、“自動化錯誤”等異常,再加上這個軟體一直沒更新,於是最近我自己從頭開發了SeleniumBasic 3.141.0.0,以下簡稱V3。
在該系列文章中我會陸續講解工具的部署、Selenium環境的搭建、使用VBA操作瀏覽器的基本語法、Selenium中高階技巧等知識。
友情提示:Selenium是一項繁瑣而強大的技術,如果你沒足夠的耐心,請繞道,以免浪費您的時間。
SeleniumBasic 3.141.0.0
- 支援的程式語言:VBA、VB6、VBS等。同時支援32和64位VBA。
- 支援的瀏覽器:Chrome、Firefox、Microsoft Edge、Internet Explorer、Opera、Safari、QQ和360等瀏覽器。
- 主要功能:建立瀏覽器、定位元素、視窗和框架切換等最常用功能。
- 適用人群:熟悉VBA方面的語言,有Selenium部署和開發經驗更佳。
接下來講一下V3的構成和部署方法。首先到騰訊微雲找到我分享的SeleniumBasic.zip,下載並解壓到方便找到的本地資料夾中(別放在桌面)。
會看到8個檔案:
- SeleniumBasic.dll和SeleniumBasic.tlb:這兩個是型別庫,提供了VBA環境中用到的SeleniumBasic名稱空間中的物件、成員。在VBA工程中需要新增引用SeleniumBasic.tlb。
- RegAsm.bat:用於註冊dll,因為釋放到你電腦以後,只是把檔案放到磁碟上了,要讓dll和tlb發揮作用,還需要向登錄檔中寫入內容。因此需要用管理員許可權執行該bat檔案。
- UnRegAsm.bat:反註冊。當你不再需要V3時,用管理員許可權執行這個bat,可以從登錄檔中移除寫入的內容。相當於軟體的解除安裝。
- WebDriver.dll和WebDriver.Support.dll:.NET語言所需的動態連結庫,V3也依賴這兩個庫,因此也是必需的。
- Config.xml:配置檔案。由於Selenium可以建立多種型別的瀏覽器,具體是啟動Chrome還是Firefox,由這個配置檔案來指定。該檔案中指定了瀏覽器的安裝位置、驅動檔案的位置、是否隱藏cmd視窗等。