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

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

只看楼主收藏回复

一楼防抽


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


    IP属地:北京2楼2023-01-04 15:20
    回复
      2026-04-23 12:02:07
      广告
      不感兴趣
      开通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
        收起回复


          IP属地:广东来自Android客户端5楼2023-01-04 15:40
          回复
            看到缩进,这个save 放在for外得话不说了。
            然后就是并行吧。
            整个线程池,这种io密集型得,搞并行吧


            IP属地:北京6楼2023-01-04 16:52
            收起回复
              薅市场中心的羊毛,还全量获得,不太合适吧?只拿自己需要的或者去官方那里爬数据


              IP属地:浙江7楼2023-01-04 19:16
              收起回复
                为什么不直接用商人助手呢


                IP属地:云南来自Android客户端8楼2023-01-05 06:04
                收起回复
                  2026-04-23 11:56:07
                  广告
                  不感兴趣
                  开通SVIP免广告
                  循环 阻塞request 能不慢么


                  IP属地:重庆来自Android客户端9楼2023-01-05 17:56
                  回复