导航

你要做的第一件事是WebDriver的导航链接。可以通过调用Get方法:

  1. driver.get("https://www.baidu.com")

值得注意的是,如果你的页面使用了大量的Ajax加载, WebDriver可能不知道什么时候已经完全加载。如果您需要确保这些页面完全加载,那么可以使用判断页面是否加载特定元素

页面切换

一个浏览器肯定会有很多窗口,所以我们肯定要有方法来实现窗口的切换。切换窗口的方法如下

  1. driver.switch_to.window("windowName")

另外你可以使用 window_handles 方法来获取每个窗口的操作对象。例如

  1. for handle in driver.window_handles:
  2. driver.switch_to.window(handle)

另外切换 frame 的方法如下

  1. driver.switch_to.frame("frameName")

history and forward

To move backwards and forwards in your browser’s history:

  1. driver.forward()
  2. driver.back()

Cookies处理

  • 为页面添加 Cookies,用法如下
  1. # Go to the correct domain
  2. driver.get("http://www.example.com")
  3. # Now set the cookie. Here's one for the entire domain
  4. # the cookie name here is 'key' and its value is 'value'
  5. driver.add_cookie({'name':'key', 'value':'value', 'path':'/'})
  6. # additional keys that can be passed in are:
  7. # 'domain' -> String,
  8. # 'secure' -> Boolean,
  9. # 'expiry' -> Milliseconds since the Epoch it should expire.
  • 获取页面 Cookies,用法如下
  1. # And now output all the available cookies for the current URL
  2. for cookie in driver.get_cookies():
  3. print "%s -> %s" % (cookie['name'], cookie['value'])
  • 删除Cookies,用法如下
  1. # You can delete cookies in 2 ways
  2. # By name
  3. driver.delete_cookie("CookieName")
  4. # Or all of them
  5. driver.delete_all_cookies()