selenium 記錄某些(出處忘了) 外加額外的啟動參數(shù)

chrome 瀏覽器 啟動相關(guān)

chrome無頭啟動

>>> from selenium.webdriver.chrome.options import Options
>>> chrome_options=Options()
>>> chrome_options.add_argument("--headless")
>>> chrome_options.add_argument("--disable-gpu")
>>> dr=webdriver.Chrome(chrome_options=chrome_options)
>>> dr.maximize_window()  #需要自行設(shè)置窗口大小否則自由(600*800)
>>> chrome_options.add_argument("--lang=zh-CN")

  一些Chrome的地址欄命令(這些命令會不停的變動,所有不一定都是好用的)
  在Chrome的瀏覽器地址欄中輸入以下命令,就會返回相應(yīng)的結(jié)果。這些命令包括查看內(nèi)存狀態(tài),瀏覽器狀態(tài),網(wǎng)絡(luò)狀態(tài),DNS服務(wù)器狀態(tài),插件緩存等等。
  about:version - 顯示當(dāng)前版本
  about:memory - 顯示本機瀏覽器內(nèi)存使用狀況
  about:plugins - 顯示已安裝插件
  about:histograms - 顯示歷史記錄
  about:dns - 顯示DNS狀態(tài)
  about:cache - 顯示緩存頁面
  about:gpu -是否有硬件加速
  about:flags -開啟一些插件 //使用后彈出這么些東西:“請小心,這些實驗可能有風(fēng)險”,不知會不會搞亂俺的配置??!
  chrome://extensions/ - 查看已經(jīng)安裝的擴展

      disable-infobars   去掉 那個煩人的chrome正在接受xxxx
>>> from selenium import webdriver
>>> option = webdriver.ChromeOptions()
>>> options.add_experimental_option("excludeSwitches", ['enable-automation'])
>>> driver = webdriver.Chrome(chrome_options=option)
>>> dr.get("https://www.baidu.com")

**完整谷歌瀏覽器啟動配置**
https://peter.sh/experiments/chromium-command-line-switches/
http://web.jobbole.com/84848/?utm_source=blog.jobbole.com&utm_medium=relatedPosts

  其他的一些關(guān)于Chrome的實用參數(shù)及簡要的中文說明(使用方法同上,當(dāng)然也可以在shell中使用)
  –user-data-dir=”[PATH]” 指定用戶文件夾User Data路徑,可以把書簽這樣的用戶數(shù)據(jù)保存在系統(tǒng)分區(qū)以外的分區(qū)。
  –disk-cache-dir=”[PATH]“ 指定緩存Cache路徑
  –disk-cache-size= 指定Cache大小,單位Byte
  –first run 重置到初始狀態(tài),第一次運行
  –incognito 隱身模式啟動
  –disable-javascript 禁用Javascript
  --omnibox-popup-count="num" 將地址欄彈出的提示菜單數(shù)量改為num個。我都改為15個了。
  --user-agent="xxxxxxxx" 修改HTTP請求頭部的Agent字符串,可以通過about:version頁面查看修改效果
  --disable-plugins 禁止加載所有插件,可以增加速度??梢酝ㄟ^about:plugins頁面查看效果
  --disable-javascript 禁用JavaScript,如果覺得速度慢在加上這個
  --disable-java 禁用java
  --start-maximized 啟動就最大化
  --no-sandbox 取消沙盒模式
  --single-process 單進程運行
  --process-per-tab 每個標(biāo)簽使用單獨進程
  --process-per-site 每個站點使用單獨進程
  --in-process-plugins 插件不啟用單獨進程
  --disable-popup-blocking 禁用彈出攔截
  --disable-plugins 禁用插件
  --disable-images 禁用圖像
  --incognito 啟動進入隱身模式
  --enable-udd-profiles 啟用賬戶切換菜單
  --proxy-pac-url 使用pac代理 [via 1/2]
  --lang=zh-CN 設(shè)置語言為簡體中文
  --disk-cache-dir 自定義緩存目錄
  --disk-cache-size 自定義緩存最大值(單位byte)
  --media-cache-size 自定義多媒體緩存最大值(單位byte)
  --bookmark-menu 在工具 欄增加一個書簽按鈕
  --enable-sync 啟用書簽同步
2.獲取元素坐標(biāo)
方法:location
解釋:首先查找到你要獲取元素的,然后調(diào)用location方法
實例:
driver.find_element_by_xpath("http://*[@id='tablechart']/tbody/tr[14]/td[9]").location
3.表單的提交
方法:submit
解釋:查找到表單(from)直接調(diào)用submit即可
實例:
driver.find_element_by_id("form1").submit()
4.獲取CSS的屬性值
方法:value_of_css_property(css_name)
實例:
driver.find_element_by_css_selector("input.btn").value_of_css_property("input.btn")
5.獲取元素的屬性值
方法:get_attribute(element_name)
實例:
driver.find_element_by_id("sellaiyuan").get_attribute("sellaiyuan")
6.判斷元素是否被選中
方法:is_selected()
實例:
driver.find_element_by_id("form1").is_selected()
7.返回元素的大小
方法:size
實例:
driver.find_element_by_id("iptPassword").size
返回值:{'width': 250, 'height': 30}
8.判斷元素是否顯示
方法:is_displayed()
實例:
driver.find_element_by_id("iptPassword").is_displayed()
9.判斷元素是否被使用
方法:is_enabled()
實例:
driver.find_element_by_id("iptPassword").is_enabled()
10.獲取元素的文本值
方法:text
實例:driver.find_element_by_id("iptUsername").text
11.元素賦值
方法:send_keys(*values)
實例:
driver.find_element_by_id("iptUsername").send_keys('admin')
注意如果是函數(shù)需要增加轉(zhuǎn)義符u,eg.
driver.find_element_by_id("iptUsername").send_keys(u'青春')
12.返回元素的tagName
方法:tag_name
實例:
driver.find_element_by_id("iptUsername").tag_name
13.刪除瀏覽器所以的cookies
方法:delete_all_cookies()
實例:
driver.delete_all_cookies()
14.刪除指定的cookie
方法:delete_cookie(name)
實例:deriver.delete_cookie("my_cookie_name")
15.關(guān)閉瀏覽器
方法:close()
實例:driver.close()
16.關(guān)閉瀏覽器并且推出驅(qū)動程序
方法:quit()
實例:driver.quit()
17.返回上一頁
方法:back()
實例:driver.back()
18.設(shè)置等待超時
方法:implicitly_wait(wait_time)
實例:driver.implicitly_wait(30)
19.瀏覽器窗口最大化
方法:maximize_window()
實例:driver.maximize_window()
20.查看瀏覽器的名字
方法:name
實例:drvier.name
21.將元素滾動到視頻可以顯示的位置,再返回元素的相對坐標(biāo)(貌似不是這樣的需要)
element.location_once_scrolled_into_view
isEnable用于存儲input、select等元素的可編輯狀態(tài),可以編輯返回true,否則返回false
isDisplayed()這個有點陌生,在大神寫的腳本看到幾次不知道何用意先不管,本身這個函數(shù)用于判斷某個元素是否存在頁面上(這里的存在不是肉眼看到的存在,而是html代碼的存在。某些情況元素的visibility為hidden或者display屬性為none,我們在頁面看不到但是實際是存在頁面的一些元素) 
isSelected(),很顯然,這個是判斷某個元素是否被選中

通過谷歌瀏覽器測試xpath css 選擇器

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容