| 
                         然后读取数据文件,通过对表格中的第二列进行反向排序,使商品按照想要数进行降序排列。 
- def __sort_result(self): 
 -     """ 
 -     对爬取的结果进行排序 
 -     :return: 
 -     """ 
 -     reader = csv.reader(open(self.file_path), delimiter=",") 
 -  
 -     # 头部标题 
 -     head_title = next(reader) 
 -  
 -     # 按照第二列进行逆序排列 
 -     sortedlist = sorted(reader, key=lambda x: (int(x[1])), reverse=True) 
 -  
 -     # 写入头部数据 
 -     write_to_csv(self.file_path, [(head_title[0], head_title[1], head_title[2])], False) 
 -  
 -     for value in sortedlist: 
 -        write_to_csv(self.file_path, [(value[0], value[1], value[2])], False) 
 -  
 -     return sortedlist 
 
  
最后拿到前 10 项数据,利用 pyecharts 生成统计图表。 
- def draw_image(self, sortedlist): 
 -      """ 
 -      画图 
 -      :param sortedlist: 
 -      :return: 
 -      """ 
 -  
 -      # 标题列表 
 -      titles = [] 
 -  
 -      # 销量 
 -      sales_num = [] 
 -  
 -      # 拿到爬取结果的标题、销量两个列表 
 -      with open(self.file_path, 'r') as csvfile: 
 -          # 读取文件 
 -          reader = csv.DictReader(csvfile) 
 -  
 -          # 加入列表中 
 -          for row in reader: 
 -              titles.append(row['title']) 
 -              sales_num.append(row['num']) 
 -  
 -      # 数目限制 
 -      if len(titles) > self.num: 
 -          titles = titles[:self.num] 
 -          sales_num = sales_num[:self.num] 
 -  
 -      # 画图 
 -      bar = ( 
 -             Bar() 
 -                 .add_xaxis(titles) 
 -                 .add_yaxis("哪些好卖", sales_num) 
 -                 .set_global_opts(title_opts=opts.TitleOpts(title="我要卖货")) 
 -         ) 
 -      bar.render('%s.html' % self.good_msg) 
 
  
第 7 步,配置参数。 
                        (编辑:91站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |