osTools.py 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. import time, datetime, traceback, os, random, requests, websocket, re
  2. import threading
  3. def speedTest(function, *args):
  4. printTime(function(*args))
  5. minTime = 9999
  6. maxTime = 0
  7. intiTime = time.time()
  8. i = 0
  9. while time.time() -1 < intiTime:
  10. lastTime = time.time()
  11. function(*args)
  12. minTime = min(minTime , time.time() - lastTime)
  13. maxTime = max(maxTime , time.time() - lastTime)
  14. i = i +1
  15. printTime('avgTime', i, 'minTime', minTime, 'maxTime', maxTime)
  16. return i
  17. def trying(function, *args):
  18. i = 0
  19. while i < 10:
  20. try:
  21. return (function(*args))
  22. except BaseException as err:
  23. i = i + 1
  24. print('err', i, err)
  25. time.sleep(5)
  26. return False
  27. def pushTxtTimeAuto(str1, name):
  28. nowtime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')[:-3]
  29. str1 = str(str1)
  30. file = open('./data/' + name + str(time.time())[:8]+ '.txt', 'a')
  31. file.write(nowtime + '_' + str1 + '\n')
  32. file.close()
  33. def pushText(str1, name):
  34. name= str(name)
  35. str1 = str(str1)
  36. file = open('./data/' + name + '.txt' , 'w')
  37. file.write(str1)
  38. file.close()
  39. def pushTextTime(str1, name):
  40. name = str(name)
  41. nowtime = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')[:-3]
  42. str1 = str(str1)
  43. file = open('./data/' + name + '.txt', 'a')
  44. file.write(nowtime + '_' + str1 + '\n')
  45. file.close()
  46. def readText(name):
  47. return readAny(name + '.txt')
  48. def readJson(name):
  49. return readAny(name + '.json')
  50. def readAny(name):
  51. try:
  52. file = open('./data/' + name, 'r')
  53. info = file.read()
  54. file.close()
  55. info = eval(info)
  56. except:
  57. info = eval(requests.get(url + 'data/' + name).text)
  58. return info
  59. def printTime(*args):
  60. print(datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S.%f')[:-3],
  61. *("%.6f" % a if isinstance(a, float) else a
  62. for a in args))
  63. def printErr(*args):
  64. printTime('*'*20 + 'ERR' + '*'*20 )
  65. printTime(*args)
  66. printTime('*'*20 + 'ERR' + '*'*20 )
  67. def asyn(function, *args):
  68. threading.Thread(target=function, args=(*args,)).start()
  69. def test(n):
  70. i = 0
  71. while i < n:
  72. i = i + 1
  73. return i
  74. printTime('OS:OK')