app02.py 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. import os
  2. import numpy as np
  3. import pandas as pd
  4. from sqlalchemy import create_engine
  5. ########################################################################################################
  6. # 将小米的订单中,属于小米后台的数据剔除
  7. # data目录:小米后台下载的对账单
  8. # 0730-0809目录:我方ftp下载的对账单
  9. # out目录:给小米生成的新的对账单
  10. ########################################################################################################
  11. curr_path = os.path.dirname(os.path.abspath(__file__))
  12. # 小米后台数据
  13. data_path = os.path.join(curr_path,"data")
  14. print( data_path )
  15. r_dict = {}
  16. for root,dirs,files in os.walk( data_path ):
  17. for file in files:
  18. file_item = os.path.join(root,file)
  19. print( file_item )
  20. df = pd.read_csv( file_item, usecols=[2] )
  21. for value in df.values:
  22. order_id = value[0].strip()
  23. print( order_id )
  24. r_dict[ order_id ] = 1
  25. print( r_dict )
  26. # 蓝色火焰后台数据
  27. my_path = os.path.join(curr_path,"0729-0824")
  28. out_path = os.path.join(curr_path,"out")
  29. print( my_path )
  30. print( out_path )
  31. for root,dirs,files in os.walk( my_path ):
  32. for file in files:
  33. file_item = os.path.join(root,file)
  34. print( file_item )
  35. df = pd.read_csv( file_item )
  36. result = [['订单号','手机号码','规格','商户订单号','收单日期','回调日期','归属地','价格','充值状态','状态描述']]
  37. for value in df.values:
  38. order_id = value[3].strip()
  39. #print( order_id )
  40. if order_id in r_dict:
  41. print( order_id )
  42. else:
  43. result.append( value )
  44. #print( result )
  45. dt = np.dtype((str, 32))
  46. f_value = np.array( result, dtype=dt)
  47. print( f_value )
  48. frame = pd.DataFrame(f_value)
  49. f_path = os.path.basename(file_item)
  50. print( f_path )
  51. write_path = os.path.join(out_path,f_path)
  52. print( write_path )
  53. frame.to_csv(write_path, index=False, header=0 , sep=',',encoding='utf-8')
  54. #f_path = os.path.splitext(file_item)
  55. #write_path = f_path[0] + ".xlsx"
  56. #print( write_path )
  57. #frame = pd.DataFrame(f_value, index=['订单号','手机号码','规格','商户订单号','收单日期','回调日期','归属地','价格','充值状态','状态描述'])
  58. #frame = pd.DataFrame(f_value)
  59. #frame.to_excel( write_path )