populate.py 869 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #!/usr/bin/env python3
  2. import datetime
  3. import json
  4. import lc.config
  5. import lc.model as m
  6. import lc.request as r
  7. def main():
  8. lc.config.DB.init("test.db")
  9. m.create_tables()
  10. u = m.User.get_or_none(name="gdritter")
  11. if not u:
  12. u = m.User.from_request(r.User(
  13. name="gdritter",
  14. password="behest",
  15. ))
  16. u.set_as_admin()
  17. with open("scripts/aisamanra.json") as f:
  18. links = json.load(f)
  19. for l in links:
  20. time = datetime.datetime.strptime(l["time"], "%Y-%m-%dT%H:%M:%SZ")
  21. req = r.Link(
  22. url=l["href"],
  23. name=l["description"],
  24. description=l["extended"],
  25. private=l["shared"] == "yes",
  26. tags=l["tags"].split(),
  27. created=time,
  28. )
  29. print(m.Link.from_request(u, req))
  30. if __name__ == "__main__":
  31. main()