python selenium grid_selenium grid 使用
selenium除了可用于web的單元測試之外,用來做數據抓取也是一個很好的工具,對于數據由復雜的AJAX調用加載的網頁,直接調用瀏覽器渲染是開發效率最高的方式。python調用它的文檔也很詳細。
單機版的selenium安裝簡單,python調用也很簡單:
from selenium import webdriver
browser= webdriver.Firefox()
browser.get('https://www.google.com.sg/')
print browser.find_element_by_id('lga')
browser.close()
browser.quit()
即可實現打開google,獲取element的功能。
selenium grid是一個更高級的服務。可以將多個單機連接成網絡,并發的提供瀏覽器渲染的功能。瀏覽本頁文檔即可完成配置。簡單來說就是如下三步:
下載jar包(Selenium Standalone Server)
啟動hub:?java -jar selenium-server-standalone-2.44.0.jar -role hub
啟動node: java -jar selenium-server-standalone-2.44.0.jar -role node ?-hub http://localhost:4444/grid/register
調用方法就是WebDriver的的類型初始化參數有變:
from selenium.webdriver.remote.webdriver import WebDriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
browser = WebDriver(command_executor='http://127.0.0.1:4444/wd/hub',
desired_capabilities=DesiredCapabilities.FIREFOX)
browser.get('https://www.google.com.sg/')
print browser.find_element_by_id('lga')
browser.close()
browser.quit()
另外,可以通過自定義sevelet來在外層包裝出日志、代理等功能,詳情可見文檔。
總結
以上是生活随笔為你收集整理的python selenium grid_selenium grid 使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql using filesort
- 下一篇: python自媒体创作_做自媒体该做什么