selenium:2.selenium 鍵盤事件模擬
今晚不想加班,於是趕緊回來看看書,不知道今天怎麼就突然特別想玩文明五,但是又要剋制自己咯,所以還是看看書吧,乾的事情有:
1.下了selenium的小工具:FireBug/FirePath。
2.確定了看書順序,我覺得難度低點開始比較好,所以我還是先看基於PYTHON的selenium,另一本書再看把,覺得自己能力還是太弱,還是從友好的先上手,雖然之前也看了BY_ID的一些用法,但是真的實際做起來弱雞一個。
3.學習了selenium 鍵盤事件模擬,其實在這之前把許久沒有開啟的虛擬機器打開了一次。。我連MAN都忘了,我的心很累。
還是言歸正傳把,學點東西就說出來。還是呼叫鍵盤的API,我把東西先說出來
send_keys(Keys.BACK_SPACE) 刪除鍵
中間插一句,今天這個大小寫搞的我灰頭苦臉的,改了好幾次指令碼才跑起來。
send_keys(Keys.SPACE) 空格鍵
send_keys(Keys.TAB) 製表鍵
send_keys(Keys.ESPACE) 回退鍵
send_keys(Keys.ENTER) 回車鍵
send_keys(Keys.CONTROL,'a') 全選
send_keys(Keys.CONTROL,'c') 複製
send_keys(Keys.CONTROL,'x') 剪下
send_keys(Keys.CONTROL,'v') 貼上
send_keys(Keys.F1) F1
個人覺得鍵盤事件還是挺實用的,如果你熟悉鍵盤操作,可以幹很多事情,很方便,下面是我的程式碼,基本把上面的都用了一遍。
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
driver=webdriver.Firefox()
driver.get("http://www.baidu.com")
driver.find_element_by_id("kw").send_keys("seleniumm")
driver.find_element_by_id("kw").send_keys(Keys.BACK_SPACE)
driver.find_element_by_id("kw").send_keys(Keys.SPACE)
driver.find_element_by_id("kw").send_keys("教程")
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'a')
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'x')
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,'v')
driver.find_element_by_id("kw").send_keys(Keys.ENTER)