Selenium+Chrome

1.由於新版Selenium不支持PhantomJS,所需chromedriver插件需要下載和本地Chrome瀏覽器同一個版本,並放到本地Chrome瀏覽器安裝目錄和Python安裝根目錄:
chromedriver:http://npm.taobao.org/mirrors/chromedriver/

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.keys import Keys
import time

# 添加瀏覽器設置
chrome_options = Options()
# 瀏覽器不提供可視化頁面
chrome_options.add_argument('--headless')
# 瀏覽器關閉硬件加速
chrome_options.add_argument('--disable-gpu')
# 瀏覽器日誌等級
chrome_options.add_argument('log-level=3')
# 創建Chrome瀏覽器對象
driver = webdriver.Chrome(options=chrome_options)
# 發送請求
driver.get("http://www.baidu.com")

# 查看當前頁面快照
driver.save_screenshot("baidu.png")
# 輸入框id="kw",搜索關鍵字"美女"
# <input type="submit" id="su" value="百度一下" class="bg s_btn">
driver.find_element_by_id("kw").send_keys(u"美女")
# 其他指定方式<input type="text" name="user-name" id="passwd-id"/>
# driver.find_element_by_name("user-name")
# driver.find_element_by_tag_name("input")
# driver.find_element_by_xpath("//input[@id='passwd-id']")

# 輸入框id="kw",ctrl+a全選輸入框內容
# driver.find_element_by_id("kw").send_keys(Keys.CONTROL, "a")
# 輸入框id="kw",ctrl+x剪切輸入框內容
# driver.find_element_by_id("kw").send_keys(Keys.CONTROL, "x")
# 輸入框id="kw",clear清除輸入框內容
driver.find_element_by_id("kw").clear()

# 輸入框id="kw",重新輸入搜索關鍵字"英雄聯盟"
driver.find_element_by_id("kw").send_keys(u"英雄聯盟")
# 確認搜索id="su",click點擊確認
# driver.find_element_by_id("su").click()
# 確認搜索id="su",模擬回車鍵ENTER/RETURN
driver.find_element_by_id("su").send_keys(Keys.ENTER)
# 等待頁面加載
time.sleep(3)
# 查看當前頁面快照
driver.save_screenshot("baiduEnter.png")
# 獲取網頁標題
print(driver.title)
# 獲取網頁url
# print(driver.current_url)
# 獲取網頁源碼
# print(driver.page_source)
# 獲取頁面所有cookie
# print(driver.get_cookies())
for cookie in driver.get_cookies():
    print('"{}":"{}"'.format(cookie["name"], cookie["value"]))

# 向下滾動10000像素
# js = "document.body.scrollTop=10000"
# driver.execute_script(js)

# 後退頁面
# driver.back()
# 前進頁面
# driver.forward()
# 關閉當前頁面,如果只有這一個頁面,同時關閉瀏覽器
driver.close()
# 關閉瀏覽器
# driver.quit()

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章