fork download
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3.  
  4. from datetime import date, datetime, timedelta, timezone
  5. from dateutil.relativedelta import relativedelta
  6. import dataset
  7.  
  8.  
  9. EST = timezone(timedelta(hours=-5), 'EST') # 東部標準時 UTC-5
  10. EDT = timezone(timedelta(hours=-4), 'EDT') # 東部夏時間 UTC-4
  11.  
  12.  
  13. def loadDb():
  14. db = dataset.connect('sqlite:///data/database-fix.sqlite3')
  15. table = db['history']
  16. results = table.find()
  17. for record in results:
  18. startsAt = record["starts_at"] # UNIX時間が入っている 1566963623.107418 こんなの
  19. startsDateTime = record["starts_date_time"] # 2019-08-27 23:40:23 こんなのが入っている
  20.  
  21. # starts_date_time が存在しない項目の場合
  22. if startsDateTime is None:
  23. # print(startsAt)
  24. unixStartAt = int(float(startsAt)) # 開始時間 (UNIX時間)
  25. fixStartsDateTime = datetime.fromtimestamp(unixStartAt, EDT) # 開始時間 (東部時間に変換)
  26. fixStartsDateTime = str(fixStartsDateTime)[0:19] # 開始時間 (書式を整形)
  27. data = dict(stats_at=startsAt, starts_date_time=fixStartsDateTime)
  28. table.update(data, ['starts_at'])
  29. print(f"追記しました: {fixStartsDateTime}")
  30. # 存在する場合
  31. else:
  32. pass
  33. # print(f"記入済み: {startsAt}")
  34.  
  35.  
  36. if __name__ == '__main__':
  37. loadDb()
  38.  
Runtime error #stdin #stdout #stderr 0.14s 23776KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
Traceback (most recent call last):
  File "./prog.py", line 6, in <module>
ModuleNotFoundError: No module named 'dataset'