2016-11-11 124 views
1
from selenium import webdriver 
from selenium.webdriver.common.keys import Keys 
browser = webdriver.Chrome("C:/Users/sebastian/desktop/chromedriver.exe") 

browser.get("http://www.python.org") 

elem = browser.find_element_by_name("q") 

elem.clear() 
elem.send_keys("selenium") 
elem.send_keys(Keys.RETURN) 

會有人解釋爲什麼它說find_element_by_name(「Q」) 當它應該找到搜索欄。 (它雖然工作)我只是不明白爲什麼「Q」?硒 - find_element_by_name需要解釋

回答

2

轉到http://www.python.org,右鍵單擊搜索欄,然後選擇「檢查元素」或類似的東西。你會看到:

<input id="id-search-field" name="q" type="search" role="textbox" class="search-field placeholder" placeholder="Search" value="" tabindex="1"> 

請注意name="q"

+0

啊,這就是爲什麼。但還有一件事,它是隨機的名稱=「q」,我的意思是名稱可以等於任何東西? 請注意,我沒有關於網絡相關語言的知識。 我想也許是一個更好的問題; 什麼是「id」「名稱」等等。什麼表明這些事情。 –

+1

@sebastian是的,名字可以是任何東西。 'q'代表查詢,並且經常像這樣使用,如https://www.python.org/search/?q=stuff或https://www.google.com/search?q=stuff –