eve吧 关注:576,888贴子:27,774,134
  • 3回复贴,共1

有大佬能帮忙优化下这套代码吗?

取消只看楼主收藏回复

一楼防抽


IP属地:北京1楼2023-01-04 15:20回复
    A了好久,决定回来再看看。
    想在高安弄个小团搞搞制造,也看了下EVE国服市场的接口,就想自己写个python小程序抓一下市场价格。但是写完之后发现程序运行要将近20分钟,不知道有没有大佬能帮忙看下给优化下代码?


    IP属地:北京2楼2023-01-04 15:20
    回复
      2026-04-23 21:15:22
      广告
      不感兴趣
      开通SVIP免广告
      import re
      import requests
      import xlwt
      import time
      import xlrd
      start = time.time()
      a = 1
      b = 0
      list1 = []
      list2 = []
      EveData_book = xlrd.open_workbook(r'F:\下载文件\evedata.xls')
      EveData_sheet = EveData_book.sheet_by_index(0)
      row = int(EveData_sheet.nrows)
      for n in range(0, 8200):
      value_a = str(int(EveData_sheet.cell_value(a, b)))
      print(value_a)
      list1.append(value_a)
      value_b = EveData_sheet.cell_value(a, b + 1)
      list2.append(value_b)
      a = a + 1
      dict = dict(zip(list2, list1))
      step1 = time.time()
      excel_eve = xlwt.Workbook(encoding="utf-8")
      sheet_eve = excel_eve.add_sheet("单价")
      a = 3
      b = 2
      for key in dict.keys():
      url = "https://www.ceve-market.org/api/market/region/10000002/type/" + dict[key] + ".xml"
      i = requests.get(url)
      i = i.text
      price_list = re.findall('<min>(.*?)</min>', i)
      price = price_list[2]
      sheet_eve.write(a, b, key)
      sheet_eve.write(a, b+1, price)
      a = a + 1
      excel_eve.save('F:\eve市场.xls')
      end = time.time()
      print(step1 - start)
      print(end - start)


      IP属地:北京3楼2023-01-04 15:20
      回复
        step1的时间是0.32秒,但是从step1到end之间,需要1400秒


        IP属地:北京4楼2023-01-04 15:21
        收起回复