2016-12-23 34 views
1

您好我有這個簡短的代碼片段:今天的Python:硒點擊按鈕不起作用,但「 n」確實

search_box = self.browser.find_elements_by_id('main-search-box') 
    search_box[0].click() 
    search_box[0].send_keys('{0} {1}'.format(first_name, last_name)) 
    search_button = self.browser.find_elements_by_class_name('search-button') 
    search_button[0].click() 

它用於工作,但它突然停止工作,這是因爲按鈕沒有點擊。我把它改爲:

search_box = self.browser.find_elements_by_id('main-search-box') 
    search_box[0].click() 
    search_box[0].send_keys('{0} {1}'.format(first_name, last_name)) 
    search_box[0].send_keys('\n') 

現在它工作正常。 原始代碼不能工作的原因是什麼?

P.S我正在使用selenium和PhantomJS在LinkedIn上搜索。

回答

0

這是因爲在search_box[0].send_keys('\n')所以'\n'字符串被識別爲新行!通常,要進入下一行,我們按ENTER button =)。基本上,'\n'是標準的ASCII換行符,而KEY_ENTER代表鍵盤代碼。享受=)

+0

我明白爲什麼第二種方式工作。我想知道爲什麼第一個停止工作。不管怎麼說,還是要謝謝你。 –

+0

再次嘗試第一個版本,因爲我沒有看到有什麼不好的地方!另外,如果可以在'console'中捕獲某些內容,請添加到帖子! –