read.py 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import csv
  2. import xlrd
  3. import requests
  4. """
  5. pip3 install xlrd==1.2.0
  6. """
  7. class ReaderFile:
  8. """
  9. 读取csv文件
  10. filePath:文件路径
  11. """
  12. def getCsvValue(self, filePath):
  13. # 用于存放返回dict的list
  14. dictList = []
  15. # 打开指定路径的文件
  16. with open(filePath) as file:
  17. # 读取csv文件
  18. datareader = csv.reader(file)
  19. # 读取的csv文件内容转换成list
  20. csvList = list(datareader)
  21. # 获取csv的第一列为dict的key值
  22. keyList = csvList[0]
  23. # 将csv取出的数据处理成dict形式
  24. for value in range(1, len(csvList)):
  25. # dict必须声明在此位置,后面的dictList.append()时里面的dict是不同的对象,若声明全局变量,那dictList中的dict的指针全是指向同一个对象,值完全一致
  26. csvDict = {}
  27. for item in range(0, len(keyList)):
  28. # 向dict中添加key和value
  29. csvDict[keyList[item]] = csvList[value][item]
  30. # 将处理完成的dict追加到dictList中
  31. dictList.append(csvDict)
  32. return dictList
  33. """
  34. 读取excel文件
  35. filePath:文件路径
  36. sheetName:要读取的sheet工作表的名称
  37. """
  38. def getExcelValue(self, filePath, sheetName):
  39. # 用于存放获取封装的dict的list
  40. allList = []
  41. # 读取excel文件
  42. workbook = xlrd.open_workbook(filePath)
  43. # 根据sheet名称读取sheet内容
  44. sheetBook = workbook.sheet_by_name(sheetName)
  45. # 获取第一行的内容作为key
  46. keyList = sheetBook.row_values(0)
  47. # 对第二行及之后的内容进行遍历,与keyList组合并封装成dict
  48. for value in range(1, sheetBook.nrows):
  49. listDict = {}
  50. for key in range(0, len(keyList)):
  51. listDict[keyList[key]] = sheetBook.row_values(value)[key]
  52. allList.append(listDict)
  53. return allList
  54. sample_list = ReaderFile().getExcelValue("/Users/alvin/Downloads/AI测试/测试样例(1).xlsx", "catboost_test")
  55. for x in sample_list:
  56. url = "http://gateway.aimpdev.k5.bigtree.tech/aimp-manager/out_api/ai_catboost1/1.3"
  57. post = requests.post(url, json={"org_no": x['risk_buss_no']})
  58. print(post.json())