2017-09-07 50 views
0

我只是想使用無頭瀏覽器來運行這個函數,我不明白爲什麼它會一直拋出錯誤,即使我提供了參數。在這裏,我已閱讀,它需要論點options.add_argument通過(): - https://seleniumhq.github.io/selenium/docs/api/py/webdriver_firefox/selenium.webdriver.firefox.options.html#module-selenium.webdriver.firefox.options在無頭模式下使用python運行firefox瀏覽器時出錯3

錯誤: - 類型錯誤:add_argument()失蹤1個人需要的位置參數: '參數'

from selenium import webdriver 
from selenium.webdriver.firefox.options import Options 


options = Options.add_argument('-headless') 
browser = webdriver.Firefox(options) 
browser.get('https://intoli.com/blog/email-spy/') 
browser.implicitly_wait(50) 
heading = browser.find_element_by_xpath('//*[@id="heading-breadcrumb"]/div/div/div/h1').text 
print(heading) 
browser.close() 

回答

1

您應該創建一個對象在調用屬性之前的選項。 有關@property如何工作的更多信息,請參閱此answer

# create a new object 
options = Options() 
# calling the property (setter) 
options.add_argument('-headless') 

更新: 此外,似乎還有其他問題,您的代碼示例。 如果你想只提供firefox_options,你應該做它作爲一個關鍵字參數,所以你必須明確地提供它:

browser = webdriver.Firefox(firefox_options=options) 
+0

現在它顯示這個錯誤 - 類型錯誤:listdir同時:路徑應該是字符串,字節,OS。 PathLike或None,不是選項 – Rahul

+0

檢查我的更新。你應該真的遵循一些Python指南和一些硒教程,因爲你犯的錯誤是非常基本的。 – Lescurel

+0

是的,我正在學習和閱讀,但一些錯誤,我不明白。謝謝你現在在工作 – Rahul

相關問題