【问题标题】:python how to clear items from list after complete each loop?python如何在完成每个循环后从列表中清除项目?
【发布时间】:2021-10-23 04:43:24
【问题描述】:

我正在使用列表来存储每个产品的所有图像 url,但我的列表在每个新产品中添加了以前的图像 url。我想在写完我的 csv 并完成每个循环后清除列表。这是我的代码:

image_list = []

for page_num in range(1,6):
    ....my others code

   

            try:
                
                images = driver.find_elements_by_xpath("//img[@class='Image--fadeIn lazyautosizes Image--lazyLoaded']")
                for i in images:
                    image = i.get_attribute('data-original-src')
                    image_list.append("https:"+image)
                    print('######image: ',image)
            except:
                images = driver.find_element_by_css_selector("#shopify-section-product-template .Image--lazyLoaded")
                image = i.get_attribute('data-original-src')
                image_list.append("https:"+image)
                print(image)

            with open("product.csv", "a",encoding="utf-8") as f:
                            writeFile = csv.writer(f)
                            writeFile.writerow([image_list])

【问题讨论】:

    标签: python python-3.x python-2.7 selenium


    【解决方案1】:

    将其分配给空列表

    image_list = []
    

    或使用谷歌 5 秒

    image_list.clear()
    

    【讨论】:

      【解决方案2】:

      您可以使用

      清除image_list列表
      image_list = []
      

      image_list = list()
      

      将列表内容写入 CSV 文件后。
      所以你的整个代码可以如下:

      image_list = []
      
      for page_num in range(1,6):
          ....my others code
      
         
      
                  try:
                      
                      images = driver.find_elements_by_xpath("//img[@class='Image--fadeIn lazyautosizes Image--lazyLoaded']")
                      for i in images:
                          image = i.get_attribute('data-original-src')
                          image_list.append("https:"+image)
                          print('######image: ',image)
                  except:
                      images = driver.find_element_by_css_selector("#shopify-section-product-template .Image--lazyLoaded")
                      image = i.get_attribute('data-original-src')
                      image_list.append("https:"+image)
                      print(image)
      
                  with open("product.csv", "a",encoding="utf-8") as f:
                                  writeFile = csv.writer(f)
                                  writeFile.writerow([image_list])
                  image_list = []
      

      【讨论】:

        猜你喜欢
        • 2023-03-28
        • 2012-01-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-10-31
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多