“丝路通:导入商品分类数据”的版本间的差异
来自CloudWiki
(创建页面,内容为“==导入图片== 将案例项目media文件夹下的brands和goods目录 拷贝至新项目相同位置处。 600px 注意这里位置实…”) |
|||
第1行: | 第1行: | ||
− | == | + | == 生成CSV文件== |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<nowiki> | <nowiki> | ||
− | + | import time | |
− | import | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | category_file ='dh_category_data.csv' | |
− | + | def read_category_file(): | |
+ | cat_list = "" # 创建类别网址列表 | ||
+ | fp = open('dh_sub_category.csv', "rt") # 打开csv文件 | ||
− | + | count= 0 | |
− | + | #类别名 类目级别 父类目级别 | |
− | for | + | s =set()#储存已有的类别 |
− | + | for line in fp: # 文件对象可以直接迭代 | |
− | + | count +=1 | |
− | + | ||
− | + | d = {}; | |
− | + | data = line.split(',') | |
+ | d['line_num'] = data[0]; | ||
+ | d['class1'] = data[1]; | ||
+ | d['class2'] = data[2]; | ||
+ | d['url'] = data[3] | ||
+ | |||
+ | now_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) | ||
+ | |||
+ | class1 ="NULL"+","+d['class1']+","+d['class1']+","+ \ | ||
+ | "NULL"+","+str(1)+","+str(0)+","+now_time+","+"NULL\n" | ||
+ | class2 ="NULL"+","+d['class2']+","+d['class2']+","+ \ | ||
+ | "NULL"+","+str(2)+","+str(0)+","+now_time+","+"NULL\n" | ||
− | + | if d['class1'] not in s: #只添加之前没有的目录 | |
− | + | cat_list += class1 | |
− | + | ||
− | + | ||
− | + | if d['class2'] not in s: | |
− | + | cat_list += class2 | |
− | + | ||
+ | s.add(d['class1']);s.add(d['class2']);#将目录名收录进集合中 | ||
+ | #print(d['class1'],d['class1'] in s) | ||
+ | #print(s) | ||
+ | if count%100 ==0: | ||
+ | fw = open(category_file,"a",encoding="utf-8") | ||
+ | fw.write(cat_list) | ||
+ | fw.close() | ||
+ | cat_list ="" | ||
+ | |||
+ | |||
+ | fp.close() | ||
+ | return cat_list | ||
− | + | if __name__ == '__main__': | |
− | + | cat_list =read_category_file() | |
− | + | ||
− | |||
− | |||
− | |||
− | |||
</nowiki> | </nowiki> | ||
− | + | ==将CSV文件上传数据库== | |
− | |||
− | |||
− | |||
− |
2020年9月24日 (四) 03:53的版本
生成CSV文件
import time category_file ='dh_category_data.csv' def read_category_file(): cat_list = "" # 创建类别网址列表 fp = open('dh_sub_category.csv', "rt") # 打开csv文件 count= 0 #类别名 类目级别 父类目级别 s =set()#储存已有的类别 for line in fp: # 文件对象可以直接迭代 count +=1 d = {}; data = line.split(',') d['line_num'] = data[0]; d['class1'] = data[1]; d['class2'] = data[2]; d['url'] = data[3] now_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) class1 ="NULL"+","+d['class1']+","+d['class1']+","+ \ "NULL"+","+str(1)+","+str(0)+","+now_time+","+"NULL\n" class2 ="NULL"+","+d['class2']+","+d['class2']+","+ \ "NULL"+","+str(2)+","+str(0)+","+now_time+","+"NULL\n" if d['class1'] not in s: #只添加之前没有的目录 cat_list += class1 if d['class2'] not in s: cat_list += class2 s.add(d['class1']);s.add(d['class2']);#将目录名收录进集合中 #print(d['class1'],d['class1'] in s) #print(s) if count%100 ==0: fw = open(category_file,"a",encoding="utf-8") fw.write(cat_list) fw.close() cat_list ="" fp.close() return cat_list if __name__ == '__main__': cat_list =read_category_file()