python3使用selenium2對巢狀iframe的126網易進行登入
阿新 • • 發佈:2019-01-05
學習selenium2時候發現找不到這類文章,找到的質量感覺挺一般的,大多是find_element_by_xpath方式,感覺有點太扯蛋了,所以就寫了這博文,希望對新手幫助,歡迎留言討教!
import sys import time from selenium import webdriver # from selenium.webdriver.common.keys import Keys # 本人用的是谷歌瀏覽器 driver = webdriver.Chrome() driver.get("https://www.126.com") # 這裡必須要有這個延時,要不取不到iframe的id time.sleep(3) iframe_id = driver.find_element_by_tag_name('iframe').get_attribute('id') # 列印只是為了確認取對了沒哈 print(iframe_id) # 切換到iframe,下面就可以直接呼叫了 driver.switch_to_frame(iframe_id) driver.find_element_by_name('email').clear() driver.find_element_by_name('email').send_keys('you account') driver.find_element_by_name('password').clear() driver.find_element_by_name('password').send_keys('you password') driver.find_element_by_id('dologin').click() # 這個延時也是必須的,要不第一次點選登入還沒反應過來(元素還沒渲染),所以得延時等它出來再操作 time.sleep(2) driver.find_element_by_link_text('登入').click() # 這裡不用說了吧 # driver.quit()