[英]I keep getting this error local variable 'url' referenced before assignment
[英]I keep getting the error of referencing a local variable before assignment! how do I solve this?
感謝您花時間幫助我。 我正在寫一個 web 在 django 中刮擦 api 但在過去 5 天里遇到了一個可怕的錯誤。 奇怪的是,在 macOS 上絕對沒有錯誤,當我部署到 AWS 時,它會向我拋出變量引用錯誤。 ubuntu 具有 python 3.6.8 和 macOS 具有 python 3.6.6
我已經嘗試了不同的方法,但現在我想不出任何方法! 應該返回的抓取數據在 macOS 上返回正常,但在 ubuntu 上我被壓垮了! 請幫忙!
data_list = []
div_class = scrape_driver_2.find(class_ = 'c1_t2i')
daraz_products = scrape_driver.find_all(class_ = 'c2prKC')
for data_fragment in daraz_products: # iterate and find all classes
data_block = data_fragment.text.strip() # Convert code to text
formatted_block = data_block.replace('ADD TO CART', '')
second_iterated_block = formatted_block.replace('%', '')
third_iterated_block = second_iterated_block.replace(')Pakistan', ')-Pakistan')
fourth_iterated_block = third_iterated_block.replace('Pakistan', '-Pakistan')
data_list.append(fourth_iterated_block)
high_data = [{"Timestamp": time_stamp,
"TS Token": ts_token,
"Status": sitrep},
data_list]
return Response({"data": high_data})
engine_initializer.close()
我得到的錯誤是:UnboundLocalError at /api/big-budget-filter/ local variable 'high_data' referenced before assignment
將 high_data 保留在循環之外,並在所有迭代后返回之前設置它。
data_list = []
div_class = scrape_driver_2.find(class_ = 'c1_t2i')
daraz_products = scrape_driver.find_all(class_ = 'c2prKC')
for data_fragment in daraz_products: # iterate and find all classes
data_block = data_fragment.text.strip() # Convert code to text
formatted_block = data_block.replace('ADD TO CART', '')
second_iterated_block = formatted_block.replace('%', '')
third_iterated_block = second_iterated_block.replace(')Pakistan', ')-Pakistan')
fourth_iterated_block = third_iterated_block.replace('Pakistan', '-Pakistan')
data_list.append(fourth_iterated_block)
high_data = [{"Timestamp": time_stamp,
"TS Token": ts_token,
"Status": sitrep},
data_list]
return Response({"data": high_data})
編輯:根據這篇文章的評論,一個帶有虛擬數據的簡化示例版本
data_list = []
daraz_products = ["prod1","prod2","prod3"]
for data_fragment in daraz_products:
data_list.append(data_fragment)
print data_list
data_list 將包含來自 daraz_products 的所有產品
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.