archivebox_shell.py 741 B

123456789101112131415161718192021222324252627282930313233
  1. #!/usr/bin/env python3
  2. __package__ = 'archivebox.cli'
  3. __command__ = 'archivebox shell'
  4. __description__ = 'Enter an interactive ArchiveBox Django shell'
  5. import sys
  6. import argparse
  7. from ..legacy.config import setup_django, OUTPUT_DIR, check_data_folder
  8. from ..legacy.util import reject_stdin
  9. def main(args=None):
  10. check_data_folder()
  11. args = sys.argv[1:] if args is None else args
  12. parser = argparse.ArgumentParser(
  13. prog=__command__,
  14. description=__description__,
  15. add_help=True,
  16. )
  17. parser.parse_args(args)
  18. reject_stdin(__command__)
  19. setup_django(OUTPUT_DIR)
  20. from django.core.management import call_command
  21. call_command("shell_plus")
  22. if __name__ == '__main__':
  23. main()