demo_20221029.py 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286
  1. # -*- codeing = utf-8 -*-
  2. # @Time : 2022/10/29 15:01
  3. # @Author : Clown
  4. # @File : demo_20221029.py
  5. # @Software : PyCharm
  6. import re
  7. import pandas as pd
  8. import hashlib
  9. import requests
  10. import json
  11. import random
  12. import pymysql
  13. import execjs
  14. from dateutil.parser import parse
  15. from datetime import datetime,timedelta
  16. # df = pd.read_excel('C:/Users/ClownHe/Desktop/随机分配.xlsx')
  17. #
  18. # # dudaos = list(set(list(df['督导'])))
  19. # a = df.to_dict('records')
  20. # # print(a)
  21. # # print(df[df['督导']=='李雷'].to_dict('records'))
  22. # a = []
  23. # shezhi = {'李雷':6,
  24. # '关杰彬':6,
  25. # '廖祥模':6,
  26. # '高洋':5,
  27. # '孟召春':6,
  28. # '刘梦奇':5}
  29. # import torrentp
  30. #
  31. # torrent_file = torrentp.TorrentDownloader('magnet:?xt=urn:btih:0fee1f3f78603ef0ae8b8183078d13734f97a2be',r'D:\天翼云盘同步盘\down')
  32. # torrent_file.start_download()
  33. # torrent_file.start_download()
  34. # df_out = []
  35. # if 1==0:
  36. # for dudao in dudaos:
  37. # print ('---------------------')
  38. # dudao_shops = {}
  39. # dudao_shops['督导'] = dudao
  40. # print('当前督导:',dudao,'\n分配门店如下')
  41. # random_num = shezhi[dudao]
  42. # shops = list(df[df['督导'] ==dudao]['门店名'])
  43. # shops_random_out = []
  44. # x = 1
  45. # while len(shops_random_out) < random_num:
  46. # shop = shops[random.randint(0,len(shops)-1)]
  47. # if shop in shops_random_out:
  48. # ...
  49. # else:
  50. # shops_random_out.append(shop)
  51. # print(x,'.',shop)
  52. # x += 1
  53. # print('---------------------')
  54. # dudao_shops['稽查门店'] = shops_random_out
  55. # a = {'a':{'a':{'a':2},'b':3},'c':4}
  56. # d = a
  57. # b = 0
  58. # c = True
  59. # while c :
  60. # try:
  61. # value = a['a']
  62. # c = True
  63. # a = value
  64. # print(value)
  65. # b += 1
  66. # except:
  67. # c = False
  68. # print(b,d)
  69. # json_path = r'C:\Users\ClownHe\Desktop\新建 文本文档.json'
  70. # json_value = open(json_path,mode='r',encoding='utf-8-sig').read()
  71. # json_data = json.loads(json_value)
  72. # print(json_data['data']['session']['APLUS_CORE_0.21.68_20221206171442_30766bff'])
  73. #
  74. # #生成JavaScript运行环境,环境名可以指定
  75. # node = execjs.get() #安装nodejs后,会得到运行环境名为:Node.js (V8)
  76. # with open('测试.js',encoding='utf-8') as f:
  77. # js_code = f.read()
  78. # #编译js代码
  79. # ctx = node.compile(js_code, cwd=r'E:\Nodejs\node_modules\npm\node_modules') #compile方法去加载js代码,参数cwd指定本地安装模块所在目录
  80. # #两种方式执行js函数
  81. # data1 = ctx.eval('getParam({"city":"北京"})') #eval方法中,整个函数调用包含在字符串内
  82. # data2 = ctx.call('getParam',{'city':'北京'}) #call方法中,第一个参数是函数名(str),后面接参数
  83. # f = open(r'C:\Users\ClownHe\Desktop\title.json',mode='a', encoding='utf-8-sig',newline='')
  84. # formin = r'C:\Users\ClownHe\Desktop\导出\selectShopDailyOperationFormHeadMT.xlsx'
  85. # df_in = pd.read_excel(formin)
  86. # rows = df_in.shape[0]
  87. # df_in_dict = df_in.loc
  88. # a = {}
  89. # for i in range(rows):
  90. # rowinfo = dict(df_in_dict[i])
  91. # json_col = json.loads(rowinfo['json'])
  92. # json_col[rowinfo['id']]['平台'] = '美团'
  93. # a.update(json_col)
  94. # f = open(r'C:\Users\ClownHe\Desktop\title.json',mode='w', encoding='utf-8-sig',newline='')
  95. # f.write(json.dumps(a,ensure_ascii=False))
  96. # a = [1,2,3,4]
  97. # b = [2,2,3]
  98. # c = list(set(a)|set(b))
  99. # for b1 in b:
  100. # try:
  101. # d = a.remove(b1)
  102. # except:
  103. # ...
  104. # print(a)
  105. #
  106. # a1 = 2
  107. # a2 = 3
  108. #
  109. # if a1 != a2 and a1 != 1:
  110. # print(a1)
  111. import math
  112. # startTime = '2022-11-30 14:12:41'
  113. # endTime = '2022-12-31 14:12:41'
  114. # x = endTime.replace(' ','T')
  115. # print(x)
  116. # n = math.ceil((parse (str (endTime)).timestamp () -parse (str (startTime)).timestamp ()) / 3600 / 24 / 30)
  117. # x = 1
  118. # crmIds = ''
  119. # json_params = []
  120. # for i in range (n):
  121. # if x < n:
  122. # m = parse (str (parse (str (startTime)) + timedelta (days=30))).strftime ('%Y-%m-%d %H:%M:%S')
  123. # x += 1
  124. # else:
  125. # m = endTime
  126. # json_param = {'crmIds':str(crmIds),
  127. # 'date':{'startTime':startTime,
  128. # 'endTime':m}}
  129. # json_params.append(json_param)
  130. # print(json_param)
  131. # startTime = parse (str (parse (str (m)) + timedelta (seconds=1))).strftime ('%Y-%m-%d %H:%M:%S')
  132. # url = "http://124.222.188.59:63307/selectcustomers1"
  133. # headers = {'Content-Type': 'application/json'}
  134. # params = {
  135. # "followUserId": '',
  136. # "mobile": "15073889961",
  137. # "name": "未知",
  138. # 'memo': '测试'
  139. # }
  140. # resp = requests.post(url,headers=headers,json = params).text
  141. # print(resp)
  142. # 'http://124.222.188.59:63307/addcustomers1?followUserId=张秋卫&name=客户测试&mobile=13783746560&memo=【客户来源:400热线】【意向品牌:浆小白;】【客户归属地:测试】【客户备注:测试一下 测试】&row_id=7129765867546673152'
  143. # 获取表单信息
  144. # url_page = f'https://qiqiao.do1.com.cn/plus/cgi-bin/open/applications/{applicationId}/form_models'
  145. #
  146. # b = ['b']
  147. # a = len(b)
  148. # d = 'a'
  149. # for i in range(a):
  150. # if i == 0:
  151. # s = d
  152. # e = b[i]
  153. # else:
  154. # s = b[i-1]
  155. # e = b[i]
  156. # # print(s,e)
  157. #
  158. # a = '2023-03-01'
  159. # b = '2023-03-02'
  160. #
  161. # a = [1,2,3,4,5,6]
  162. # for i in a:
  163. # if i >= 1:
  164. # break
  165. # print (i)
  166. # dingdan = [1,2,3,4,4,6,7]
  167. # dinghuo = [1,1,4,4,5,0,0]
  168. #
  169. # # dingdan = [0,2,4,5,0,0,0]
  170. # # dinghuo = [1,2,3,4,5,6,7]
  171. #
  172. # x = 0
  173. # y = 0
  174. # dingdanT = 0
  175. # dinghuoT = 0
  176. #
  177. # dingdan_1 = 0
  178. # dinghuo_1 = 0
  179. #
  180. # #如果开始为正常,持续推算,直到异常
  181. # #如果开始为异常,持续推算,直到正常,持续推算,直到异常
  182. #
  183. # for i in range(6):
  184. # dingdanT = dingdanT + dingdan[i]
  185. # dinghuoT = dinghuoT + dinghuo[i]
  186. #
  187. # if (dingdanT <= dinghuoT) and (dingdan_1 <= dinghuo_1):
  188. # dingdan_1 = dingdanT
  189. # dinghuo_1 = dinghuoT
  190. # a = '正常'
  191. # x = 0
  192. # y = x + 1
  193. # else:
  194. # dingdan_1 = dingdanT
  195. # dinghuo_1 = dinghuoT
  196. # a = '异常'
  197. # x = -1
  198. #
  199. # if x + y == 0:
  200. # break
  201. # print (a, i, dingdanT, dinghuoT,x,y,dinghuoT-dingdanT)
  202. # dingdan = [1,2,3,4,4,6,7]
  203. # dinghuo = [1,1,4,4,5,0,0]
  204. #
  205. # # dingdan = [0,2,4,5,0,0,0]
  206. # # dinghuo = [1,2,3,4,5,6,7]
  207. #
  208. # x = 0
  209. # y = 0
  210. # dingdanT = 0
  211. # dinghuoT = 0
  212. #
  213. # dingdan_1 = 0
  214. # dinghuo_1 = 0
  215. #
  216. # s = []
  217. # #从近至远,排查门店订货于订单差异,按最远一次合格为基础,计算当前库存量
  218. #
  219. # for i in range(6):
  220. # dingdanT = dingdanT + dingdan[i]
  221. # dinghuoT = dinghuoT + dinghuo[i]
  222. #
  223. # if dingdanT <= dinghuoT:
  224. # x = i
  225. # else:
  226. # ...
  227. # s_0 = dinghuoT - dingdanT
  228. # s.append(s_0)
  229. # print(s)
  230. # print(s[x])
  231. # a = [8,7,6,5,4,3,2,1]
  232. # v = [1,2,3,4,5,6,7,8]
  233. #
  234. # b = 9
  235. #
  236. # for i in range(len(a)):
  237. # if i == 0:
  238. # if b == a[i]:
  239. # continue
  240. # else:
  241. # max = b
  242. # min = a[i]
  243. # else:
  244. # max = a[i-1]
  245. # min = a[i]
  246. # print(f'{min}至{max}值为{v[i]}')
  247. #
  248. # path = 'E:/chrome下载文件/浆小白•豆浆夜市_订单明细下载_2023-03-18_2023-03-18.xlsx'
  249. # path_csv = 'E:/chrome下载文件/浆小白•豆浆夜市_订单明细下载_2023-03-18_2023-03-18.csv'
  250. # df = pd.read_excel(path,dtype='str',sheet_name=0)
  251. # df = pd.DataFrame(df,dtype='str')
  252. # df.to_csv(path_csv,index=False)
  253. # a = '''
  254. # {"data": [{"clueId": "155920809", "commitTime": "2023-03-27 09:33:51", "solutionType": "phone", "clueName": "未知", "cluePhoneNumber": "15092182342", "flowChannelName": "信息流推广", "area": "山东\n青岛", "searchWord": "", "keyword": "-", "userName": "vip浆小白", "brandName": "浆小白", "routeName": "baidu"}, {"clueId": "230327292902802589", "commitTime": "2023-03-27 09:33:31", "solutionType": "form", "clueName": "王丹阳", "cluePhoneNumber": "17336286479", "flowChannelName": "信息流推广", "area": "湖北\n荆州", "searchWord": "", "keyword": "-", "userName": "vip浆小白", "brandName": "浆小白", "routeName": "baidu"}, {"clueId": "230327292901901882", "commitTime": "2023-03-27 09:30:35", "solutionType": "form", "clueName": "王先生", "cluePhoneNumber": "19941330384", "flowChannelName": "信息流推广", "area": "浙江\n温州", "searchWord": "", "keyword": "-", "userName": "vip浆小白", "brandName": "浆小白", "routeName": "baidu"}, {"clueId": "230327292901813907", "commitTime": "2023-03-27 09:30:19", "solutionType": "form", "clueName": "陈", "cluePhoneNumber": "19577687972", "flowChannelName": "信息流推广", "area": "福建\n莆田", "searchWord": "", "keyword": "-", "userName": "vip浆小白", "brandName": "浆小白", "routeName": "baidu"}, {"clueId": "230327292901807750", "commitTime": "2023-03-27 09:30:18", "solutionType": "form", "clueName": "李佳", "cluePhoneNumber": "16537312348", "flowChannelName": "信息流推广", "area": "湖北\n荆州", "searchWord": "", "keyword": "-", "userName": "vip浆小白", "brandName": "浆小白", "routeName": "baidu"}]}
  255. # '''
  256. # print(len(a))
  257. # c = 5
  258. # b = [1,2,3,4,5,6]
  259. # e = b
  260. # d = len(str(e))
  261. # n = round(len(b)/round(d/c,0),0)
  262. # print(d)
  263. # print(n)
  264. # # while d > c:
  265. #
  266. # print('\033[1;32m 新增商品失败 \033[0m')