2017-02-22 36 views
0

基本上,我正在做一些網站與硒的刮,並需要定義一個變量,如果沒有錯誤發生,或另一件事情,如果發生錯誤。Python:我如何根據是否發生錯誤來定義變量?

段:

try: 
     raw_cc_timeframe = driver.find_element_by_xpath("//*[@id='nearbyStore']/div/div/div/div/div/div/ul/li[1]/div[1]/p") 
     cc_timeframe = raw_cc_timeframe.text 
    except NoSuchElementException: 
     cc_timeframe = "" 

我想叫cc_timeframe如果元素存在於被稱爲元素的名稱的變量,但是如果它不,我想要的變量是空白。

我不斷收到一個unboundlocalerror,真的不知道爲什麼儘管閱讀了大量的帖子。

我試着將變量設置爲全局變量,但是當我運行這個函數幾百次時,變量似乎不會每次都重置,導致錯誤的值。

我對這一切都很新,所以任何幫助將不勝感激。

+1

[UnboundLocalError在Python(的可能的複製http://stackoverflow.com/questions/9264763/unboundlocalerror在Python中) –

+0

請[編輯]你的這篇文章顯示你的完整代碼,它不屬於答案。 – SiHa

回答

0

嘗試做搜索之前設置cc_timeframe=""和使用pass爲應對未發現異常

try: 
    cc_timeframe = "" 
    raw_cc_timeframe = driver.find_element_by_xpath("//*[@id='nearbyStore']/div/div/div/div/div/div/ul/li[1]/div[1]/p") 
    cc_timeframe = raw_cc_timeframe.text 
except NoSuchElementException: 
    pass 
+0

感謝您的及時回覆。 好吧,當我嘗試打印cc_timeframe時,出現NameError錯誤 – user5847481

+1

嘗試將它設置爲「bob」並重新運行,請聽起來好像您還有其他事情正在進行。我認爲你仍然聲明爲全球性的,嘗試有和沒有該選項 – CJC

+0

請在下面找到全部功能 – user5847481