在當前目錄有名叫selenium的檔案,Python會先匯入這個檔案,然後再匯入標準庫裡面的selenium.py。
可以使用
import selenium
print selenium.__file__
去看打印出的檔案路徑,如果不是型別下面的地址C:\Python27\lib\site-packages\selenium-2.31.0-py2.7.egg\selenium\__init__.pyc,需要把當前目錄下的名叫selenium檔案刪除或者重新命名。
WebDriver原理分析
WebDriver與之前Selenium的JS注入實現不同,直接利用了瀏覽器native
support來操作瀏覽器。所以對於不同平臺,不同的瀏覽器,必須依賴一個特定的瀏覽器的native
component來實現把WebDriver API的呼叫轉化為瀏覽器的native invoke。
在我們new一個WebDriver的過程中,Selenium首先會確認瀏覽器的native
component是否存在可用而且版本匹配。接著就在目標瀏覽器裡啟動一整套Web Service,這套Web
Service使用了Selenium自己設計定義的協議,名字叫做 The WebDriver Wire Protocol
在當前目錄有名叫selenium的檔案,Python會先匯入這個檔案,然後再匯入標準庫裡面的selenium.py。
可以使用
import selenium
print selenium.__file__
去看打印出的檔案路徑,如果不是型別下面的地址C:\Python27\lib\site-packages\selenium-2.31.0-py2.7.egg\selenium\__init__.pyc,需要把當前目錄下的名叫selenium檔案刪除或者重新命名。
WebDriver原理分析
WebDriver與之前Selenium的JS注入實現不同,直接利用了瀏覽器native
support來操作瀏覽器。所以對於不同平臺,不同的瀏覽器,必須依賴一個特定的瀏覽器的native
component來實現把WebDriver API的呼叫轉化為瀏覽器的native invoke。
在我們new一個WebDriver的過程中,Selenium首先會確認瀏覽器的native
component是否存在可用而且版本匹配。接著就在目標瀏覽器裡啟動一整套Web Service,這套Web
Service使用了Selenium自己設計定義的協議,名字叫做 The WebDriver Wire Protocol