demo_定时器.py 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748
  1. # -*- codeing = utf-8 -*-
  2. # @Time : 2023/3/29 15:48
  3. # @Author : Clown
  4. # @File : demo_定时器.py
  5. # @Software : PyCharm
  6. import schedule
  7. import time
  8. import threading
  9. from datetime import datetime
  10. from demo_baiduAd import runADsolution,selectbaidu_ad_time_meter
  11. from dateutil.parser import parse
  12. import json
  13. def logInfo():
  14. print(datetime.now().strftime("%Y-%m-%d %H:%M:%S"))
  15. if __name__ == '__main__':
  16. e = ''
  17. n = ["q", "w", "e", "p", "o", "i", "r", "t", "y", "u", "a", "s", "d", "l", "k", "j", "f", "g", "h", "z", "x", "c",
  18. "m", "n", "b", "v"]
  19. if e == "unique":
  20. a = n[10] + n[11] + n[16] + n[10] + n[11] + n[16]
  21. else:
  22. a = n[10] + n[16] + n[14] + n[17] + n[10] + n[11] + n[14] + n[15] + n[17] + n[16] + n[18]
  23. print(a)
  24. a = "FJAHANGJ4245"
  25. lowercase_text = a.lower()
  26. print(lowercase_text)
  27. # timestamp = int(time.time() * 1000)
  28. # secretkey = decodeKey('secret', timestamp, shopId, ksid)
  29. # uniquekey = decodeKey('unique', timestamp, shopId, ksid)
  30. # params = {"timestamp": timestamp, "shopId": shopId, 'secretkey': secretkey, 'uniquekey': uniquekey}
  31. a = 'dl9prO2Y1V0H1wwp0yhizIgCvzoiopKebe-bEab3NFL9SEBl-4PH6aTe7afSYU2J6FYARDWlEFQJ8UKhZ9NCChsAcaNQd9sJynTGEwcEzNyJWnOhq2heV36eIB2l-2WJVEX-oqDmnH-FaTgmop49YHWljZYtnxxeYdSjmWMmYFrPETzzmDoge-pvEMGot75jOERcv6QYENe8e0jd9ZtCW40lQbpDHy1uoZIuOcnTa75CbYZMZh1..'
  32. b =1
  33. if 1==0:
  34. b_date = '2023-03-29 17:49:50'
  35. b_date = parse(b_date)
  36. while b_date <= datetime.now():
  37. logInfo()
  38. time.sleep(5)
  39. if 1==0:
  40. n = 1
  41. minute = 2
  42. f_now = datetime.now ()
  43. f_mm = f_now.strftime ("%M")
  44. f_ss = f_now.strftime ("%S")
  45. f_c = int (f_mm) % minute
  46. wait_s = (minute - f_c -1)*60 + 59 - int(f_ss)
  47. time.sleep(wait_s)
  48. while True:
  49. now = datetime.now ()
  50. mm = now.strftime ("%M")
  51. ss = now.strftime ("%S")
  52. c = int (mm) % minute
  53. if c == 0 and ss =='01':
  54. s = time.time()
  55. n += 1
  56. logInfo()
  57. # runADsolution()
  58. time.sleep(minute*60-0.5-(time.time()-s))
  59. a = r'''{
  60. "success": true,
  61. "code": 0,
  62. "message": "操作成功",
  63. "data": {
  64. "modules": [
  65. {
  66. "moduleId": 5,
  67. "moduleName": "营业",
  68. "list": [
  69. {
  70. "id": 12021,
  71. "name": "收入",
  72. "code": "poi_income"
  73. },
  74. {
  75. "id": 12022,
  76. "name": "商品原价",
  77. "code": "prod_orig"
  78. },
  79. {
  80. "id": 12023,
  81. "name": "包装费",
  82. "code": "packet_box_fee"
  83. },
  84. {
  85. "id": 12024,
  86. "name": "顾客配送费(跑腿/自配送)",
  87. "code": "dlvr_fee"
  88. },
  89. {
  90. "id": 12025,
  91. "name": "支出",
  92. "code": "poi_exs"
  93. },
  94. {
  95. "id": 12026,
  96. "name": "商家活动支出",
  97. "code": "poi_act_exs"
  98. },
  99. {
  100. "id": 12028,
  101. "name": "公益捐款",
  102. "code": "pw_fee"
  103. },
  104. {
  105. "id": 12029,
  106. "name": "其它支出",
  107. "code": "other_fee"
  108. },
  109. {
  110. "id": 12030,
  111. "name": "营业额",
  112. "code": "open_amt"
  113. },
  114. {
  115. "id": 12031,
  116. "name": "顾客实付",
  117. "code": "bill_actual_amt"
  118. },
  119. {
  120. "id": 12032,
  121. "name": "有效订单",
  122. "code": "bill_ord_num"
  123. },
  124. {
  125. "id": 12033,
  126. "name": "实付单均价",
  127. "code": "ord_avg_bill_actual_amt"
  128. },
  129. {
  130. "id": 12034,
  131. "name": "活动补贴",
  132. "code": "discount_fee"
  133. },
  134. {
  135. "id": 12035,
  136. "name": "平台活动补贴",
  137. "code": "pltf_discount_fee"
  138. },
  139. {
  140. "id": 32141,
  141. "name": "平台服务费(含佣金和配送服务费)",
  142. "code": "pltfm_sf"
  143. }
  144. ]
  145. },
  146. {
  147. "moduleId": 6,
  148. "moduleName": "流量",
  149. "list": [
  150. {
  151. "id": 13021,
  152. "name": "曝光人数",
  153. "code": "expose_uv"
  154. },
  155. {
  156. "id": 13022,
  157. "name": "入店人数",
  158. "code": "click_uv"
  159. },
  160. {
  161. "id": 13024,
  162. "name": "入店转化率",
  163. "code": "click_uv_rate"
  164. },
  165. {
  166. "id": 13025,
  167. "name": "下单转化率",
  168. "code": "push_order_uv_rate"
  169. },
  170. {
  171. "id": 13521,
  172. "name": "曝光新客",
  173. "code": "first_pur_expose_uv"
  174. },
  175. {
  176. "id": 13522,
  177. "name": "入店新客",
  178. "code": "first_pur_click_uv"
  179. },
  180. {
  181. "id": 13524,
  182. "name": "新客入店转化率",
  183. "code": "first_pur_click_rate"
  184. },
  185. {
  186. "id": 13525,
  187. "name": "新客下单转化率",
  188. "code": "first_pur_order_rate"
  189. },
  190. {
  191. "id": 13526,
  192. "name": "曝光老客",
  193. "code": "re_pur_expose_uv"
  194. },
  195. {
  196. "id": 13527,
  197. "name": "入店老客",
  198. "code": "re_pur_click_uv"
  199. },
  200. {
  201. "id": 13529,
  202. "name": "老客入店转化率",
  203. "code": "re_pur_click_rate"
  204. },
  205. {
  206. "id": 13530,
  207. "name": "老客下单转化率",
  208. "code": "re_pur_order_rate"
  209. },
  210. {
  211. "id": 32154,
  212. "name": "曝光次数",
  213. "code": "expose_num"
  214. },
  215. {
  216. "id": 32155,
  217. "name": "入店次数",
  218. "code": "click_num"
  219. }
  220. ]
  221. },
  222. {
  223. "moduleId": 7,
  224. "moduleName": "顾客",
  225. "list": [
  226. {
  227. "id": 13023,
  228. "name": "下单人数",
  229. "code": "push_order_uv"
  230. },
  231. {
  232. "id": 13523,
  233. "name": "下单新客",
  234. "code": "first_pur_order_uv"
  235. },
  236. {
  237. "id": 13528,
  238. "name": "下单老客",
  239. "code": "re_pur_order_uv"
  240. }
  241. ]
  242. },
  243. {
  244. "moduleId": 8,
  245. "moduleName": "服务",
  246. "list": [
  247. {
  248. "id": 14021,
  249. "name": "取消订单",
  250. "code": "cancel_ord_num"
  251. },
  252. {
  253. "id": 14022,
  254. "name": "商责取消订单",
  255. "code": "poi_res_cancel_ord_num"
  256. },
  257. {
  258. "id": 14023,
  259. "name": "商责取消率",
  260. "code": "poi_res_cancel_rate"
  261. }
  262. ]
  263. },
  264. {
  265. "moduleId": 9,
  266. "moduleName": "店铺分",
  267. "list": [
  268. {
  269. "id": 15001,
  270. "name": "店铺分",
  271. "code": "poi_score"
  272. },
  273. {
  274. "id": 15002,
  275. "name": "高峰营业时长得分",
  276. "code": "peak_time"
  277. },
  278. {
  279. "id": 15003,
  280. "name": "优质商品率得分",
  281. "code": "food_good_quality_rate"
  282. },
  283. {
  284. "id": 15004,
  285. "name": "有效活动丰富度得分",
  286. "code": "activity_rich_level"
  287. },
  288. {
  289. "id": 15005,
  290. "name": "商家不接单率得分",
  291. "code": "ord_abnormal_rate"
  292. },
  293. {
  294. "id": 15006,
  295. "name": "差评回复率得分",
  296. "code": "bad_comment_reply_rate"
  297. },
  298. {
  299. "id": 15007,
  300. "name": "在线联系回复率得分",
  301. "code": "im_reply_rate"
  302. },
  303. {
  304. "id": 15008,
  305. "name": "商家评分得分",
  306. "code": "poi_comment_score"
  307. },
  308. {
  309. "id": 15009,
  310. "name": "近30日日均高峰营业时长",
  311. "code": "prefix_peak_time"
  312. },
  313. {
  314. "id": 15010,
  315. "name": "优质商品率",
  316. "code": "prefix_food_good_quality_rate"
  317. },
  318. {
  319. "id": 15011,
  320. "name": "有效活动丰富度",
  321. "code": "prefix_activity_rich_level"
  322. },
  323. {
  324. "id": 15012,
  325. "name": "近30日商家不接单率",
  326. "code": "prefix_ord_abnormal_rate"
  327. },
  328. {
  329. "id": 15013,
  330. "name": "近30日差评回复率",
  331. "code": "prefix_bad_comment_reply_rate"
  332. },
  333. {
  334. "id": 15014,
  335. "name": "近7日日均在线联系回复率",
  336. "code": "prefix_im_reply_rate"
  337. },
  338. {
  339. "id": 15015,
  340. "name": "商家评分",
  341. "code": "prefix_poi_comment_score"
  342. },
  343. {
  344. "id": 15016,
  345. "name": "菜单丰富度得分",
  346. "code": "menu_rich_level"
  347. },
  348. {
  349. "id": 15017,
  350. "name": "装修丰富度得分",
  351. "code": "decorate_rich_level"
  352. },
  353. {
  354. "id": 15018,
  355. "name": "服务功能丰富度得分",
  356. "code": "service_rich_level"
  357. },
  358. {
  359. "id": 15020,
  360. "name": "菜单丰富度",
  361. "code": "prefix_menu_rich_level"
  362. },
  363. {
  364. "id": 15021,
  365. "name": "装修丰富度",
  366. "code": "prefix_decorate_rich_level"
  367. },
  368. {
  369. "id": 15022,
  370. "name": "服务功能丰富度",
  371. "code": "prefix_service_rich_level"
  372. },
  373. {
  374. "id": 15023,
  375. "name": "出餐完成上报率/配送准时率",
  376. "code": "prefix_delivery_report_or_delay_rate"
  377. },
  378. {
  379. "id": 32142,
  380. "name": "基础营业时长得分",
  381. "code": "poi_ol_time"
  382. },
  383. {
  384. "id": 32143,
  385. "name": "基础营业时长",
  386. "code": "prefix_poi_ol_time"
  387. },
  388. {
  389. "id": 32144,
  390. "name": "出餐完成上报率得分/配送准时率得分",
  391. "code": "delivery_report_or_delay_rate"
  392. }
  393. ]
  394. },
  395. {
  396. "moduleId": 28,
  397. "moduleName": "配送",
  398. "list": [
  399. {
  400. "id": 32076,
  401. "name": "配送信息上传率",
  402. "code": "dlverOrdBackRatio"
  403. }
  404. ]
  405. },
  406. {
  407. "moduleId": 56,
  408. "moduleName": "营业",
  409. "list": [
  410. {
  411. "id": 32252,
  412. "name": "收入",
  413. "code": "poi_income"
  414. },
  415. {
  416. "id": 32253,
  417. "name": "营业额",
  418. "code": "open_amt"
  419. },
  420. {
  421. "id": 32254,
  422. "name": "顾客实付",
  423. "code": "bill_actual_amt"
  424. },
  425. {
  426. "id": 32255,
  427. "name": "有效订单",
  428. "code": "bill_ord_num"
  429. },
  430. {
  431. "id": 32256,
  432. "name": "实付单均价",
  433. "code": "ord_avg_bill_actual_amt"
  434. },
  435. {
  436. "id": 32257,
  437. "name": "活动补贴",
  438. "code": "discount_fee"
  439. }
  440. ]
  441. },
  442. {
  443. "moduleId": 57,
  444. "moduleName": "流量",
  445. "list": [
  446. {
  447. "id": 32258,
  448. "name": "曝光人数",
  449. "code": "expose_uv"
  450. },
  451. {
  452. "id": 32259,
  453. "name": "入店人数",
  454. "code": "click_uv"
  455. },
  456. {
  457. "id": 32261,
  458. "name": "入店转化率",
  459. "code": "click_uv_rate"
  460. },
  461. {
  462. "id": 32262,
  463. "name": "下单转化率",
  464. "code": "push_order_uv_rate"
  465. },
  466. {
  467. "id": 32263,
  468. "name": "曝光新客",
  469. "code": "first_pur_expose_uv"
  470. },
  471. {
  472. "id": 32264,
  473. "name": "入店新客",
  474. "code": "first_pur_click_uv"
  475. },
  476. {
  477. "id": 32266,
  478. "name": "新客入店转化率",
  479. "code": "first_pur_click_rate"
  480. },
  481. {
  482. "id": 32267,
  483. "name": "新客下单转化率",
  484. "code": "first_pur_order_rate"
  485. },
  486. {
  487. "id": 32268,
  488. "name": "曝光老客",
  489. "code": "re_pur_expose_uv"
  490. },
  491. {
  492. "id": 32269,
  493. "name": "入店老客",
  494. "code": "re_pur_click_uv"
  495. },
  496. {
  497. "id": 32271,
  498. "name": "老客入店转化率",
  499. "code": "re_pur_click_rate"
  500. },
  501. {
  502. "id": 32272,
  503. "name": "老客下单转化率",
  504. "code": "re_pur_order_rate"
  505. },
  506. {
  507. "id": 32273,
  508. "name": "曝光次数",
  509. "code": "expose_num"
  510. },
  511. {
  512. "id": 32274,
  513. "name": "入店次数",
  514. "code": "click_num"
  515. }
  516. ]
  517. },
  518. {
  519. "moduleId": 58,
  520. "moduleName": "顾客",
  521. "list": [
  522. {
  523. "id": 32260,
  524. "name": "下单人数",
  525. "code": "push_order_uv"
  526. },
  527. {
  528. "id": 32265,
  529. "name": "下单新客",
  530. "code": "first_pur_order_uv"
  531. },
  532. {
  533. "id": 32270,
  534. "name": "下单老客",
  535. "code": "re_pur_order_uv"
  536. }
  537. ]
  538. },
  539. {
  540. "moduleId": 59,
  541. "moduleName": "营业",
  542. "list": [
  543. {
  544. "id": 32283,
  545. "name": "收入",
  546. "code": "poi_income"
  547. },
  548. {
  549. "id": 32284,
  550. "name": "营业额",
  551. "code": "open_amt"
  552. },
  553. {
  554. "id": 32285,
  555. "name": "顾客实付",
  556. "code": "bill_actual_amt"
  557. },
  558. {
  559. "id": 32286,
  560. "name": "有效订单",
  561. "code": "bill_ord_num"
  562. },
  563. {
  564. "id": 32287,
  565. "name": "实付单均价",
  566. "code": "ord_avg_bill_actual_amt"
  567. },
  568. {
  569. "id": 32288,
  570. "name": "活动补贴",
  571. "code": "discount_fee"
  572. }
  573. ]
  574. },
  575. {
  576. "moduleId": 60,
  577. "moduleName": "流量",
  578. "list": [
  579. {
  580. "id": 32289,
  581. "name": "曝光人数",
  582. "code": "expose_uv"
  583. },
  584. {
  585. "id": 32290,
  586. "name": "入店人数",
  587. "code": "click_uv"
  588. },
  589. {
  590. "id": 32292,
  591. "name": "入店转化率",
  592. "code": "click_uv_rate"
  593. },
  594. {
  595. "id": 32293,
  596. "name": "下单转化率",
  597. "code": "push_order_uv_rate"
  598. },
  599. {
  600. "id": 32294,
  601. "name": "曝光新客",
  602. "code": "first_pur_expose_uv"
  603. },
  604. {
  605. "id": 32295,
  606. "name": "入店新客",
  607. "code": "first_pur_click_uv"
  608. },
  609. {
  610. "id": 32297,
  611. "name": "新客入店转化率",
  612. "code": "first_pur_click_rate"
  613. },
  614. {
  615. "id": 32298,
  616. "name": "新客下单转化率",
  617. "code": "first_pur_order_rate"
  618. },
  619. {
  620. "id": 32299,
  621. "name": "曝光老客",
  622. "code": "re_pur_expose_uv"
  623. },
  624. {
  625. "id": 32300,
  626. "name": "入店老客",
  627. "code": "re_pur_click_uv"
  628. },
  629. {
  630. "id": 32302,
  631. "name": "老客入店转化率",
  632. "code": "re_pur_click_rate"
  633. },
  634. {
  635. "id": 32303,
  636. "name": "老客下单转化率",
  637. "code": "re_pur_order_rate"
  638. },
  639. {
  640. "id": 32304,
  641. "name": "曝光次数",
  642. "code": "expose_num"
  643. },
  644. {
  645. "id": 32305,
  646. "name": "入店次数",
  647. "code": "click_num"
  648. }
  649. ]
  650. },
  651. {
  652. "moduleId": 61,
  653. "moduleName": "顾客",
  654. "list": [
  655. {
  656. "id": 32291,
  657. "name": "下单人数",
  658. "code": "push_order_uv"
  659. },
  660. {
  661. "id": 32296,
  662. "name": "下单新客",
  663. "code": "first_pur_order_uv"
  664. },
  665. {
  666. "id": 32301,
  667. "name": "下单老客",
  668. "code": "re_pur_order_uv"
  669. }
  670. ]
  671. }
  672. ],
  673. "defaultItems": [
  674. {
  675. "id": 2,
  676. "name": "门店名称",
  677. "code": "poi_name"
  678. },
  679. {
  680. "id": 3,
  681. "name": "门店id",
  682. "code": "wm_poi_id"
  683. },
  684. {
  685. "id": 4,
  686. "name": "门店所在城市",
  687. "code": "poi_location"
  688. }
  689. ],
  690. "defaultConfig": {
  691. "name": "全部",
  692. "moduleIds": [
  693. 5,
  694. 6,
  695. 7,
  696. 8,
  697. 9,
  698. 28,
  699. 37
  700. ],
  701. "label": "业务"
  702. },
  703. "extendDefault": [
  704. {
  705. "name": "外卖",
  706. "items": [],
  707. "moduleIds": [
  708. 56,
  709. 57,
  710. 58
  711. ]
  712. },
  713. {
  714. "name": "拼好饭",
  715. "items": [],
  716. "moduleIds": [
  717. 59,
  718. 60,
  719. 61
  720. ]
  721. }
  722. ]
  723. }
  724. }'''
  725. b = json.loads(a)
  726. c = b['data']['modules']
  727. for i in c:
  728. moduleId = i['moduleId']
  729. ids = i['list']
  730. id_list = []
  731. for id in ids:
  732. id_no = id['id']
  733. id_list.append(id_no)
  734. print(id_no,moduleId)