Browse Source

isort and formatting clean up

main
crunk 1 year ago
parent
commit
805d5b5b2b
  1. 3
      app.py
  2. 3
      column.py
  3. 3
      parse_rss_feeds.py
  4. 2
      quick_test.py
  5. 111
      simplejsonstorage.py
  6. 9
      start.py

3
app.py

@ -1,5 +1,6 @@
import os
import json import json
import os
import flask_apscheduler import flask_apscheduler
import tomli import tomli
from flask import Flask from flask import Flask

3
column.py

@ -1,7 +1,8 @@
import random
import json import json
import random
from datetime import datetime from datetime import datetime
from time import mktime from time import mktime
from parse_rss_feeds import parse_rss_feeds from parse_rss_feeds import parse_rss_feeds

3
parse_rss_feeds.py

@ -1,6 +1,7 @@
from feedparser import parse
import random import random
from feedparser import parse
def parse_single_rss_feed(url, entries): def parse_single_rss_feed(url, entries):
feed = parse(url) feed = parse(url)

2
quick_test.py

@ -1,8 +1,8 @@
import tomli import tomli
from column import Column from column import Column
from parse_rss_feeds import parse_rss_feeds from parse_rss_feeds import parse_rss_feeds
with open("columns.toml", "rb") as f: with open("columns.toml", "rb") as f:
column_dict = tomli.load(f) column_dict = tomli.load(f)
columns_file = column_dict["column"] columns_file = column_dict["column"]

111
simplejsonstorage.py

@ -1,60 +1,61 @@
from json import dumps, loads
from logging import DEBUG, INFO, basicConfig, getLogger
from os import environ, mkdir from os import environ, mkdir
from os.path import exists from os.path import exists
from pathlib import Path from pathlib import Path
from logging import DEBUG, INFO, basicConfig, getLogger
from json import dumps, loads
class SimpleJsonStorage(dict): class SimpleJsonStorage(dict):
"""A simple json file. """A simple json file.
It is a dictionary which saves to disk on all writes. It is optimised for It is a dictionary which saves to disk on all writes. It is optimised for
ease of hacking and accessibility and not for performance or efficiency. ease of hacking and accessibility and not for performance or efficiency.
Written by decentral1se, as part of: Written by decentral1se, as part of:
https://git.vvvvvvaria.org/decentral1se/xbotlib/src/branch/main/xbotlib.py https://git.vvvvvvaria.org/decentral1se/xbotlib/src/branch/main/xbotlib.py
""" """
def __init__(self, filename, log, *args, **kwargs): def __init__(self, filename, log, *args, **kwargs):
"""Initialise the object.""" """Initialise the object."""
self.filename = Path(filename).absolute() self.filename = Path(filename).absolute()
self.log = getLogger(__name__) self.log = getLogger(__name__)
self._loads() self._loads()
self.update(*args, **kwargs) self.update(*args, **kwargs)
def _loads(self): def _loads(self):
"""Load the file.""" """Load the file."""
if not exists(self.filename): if not exists(self.filename):
return return
try: try:
with open(self.filename, "r") as handle: with open(self.filename, "r") as handle:
self.update(loads(handle.read())) self.update(loads(handle.read()))
except Exception as exception: except Exception as exception:
message = f"Loading file storage failed: {exception}" message = f"Loading file storage failed: {exception}"
self.log.error(message, exc_info=exception) self.log.error(message, exc_info=exception)
exit(1) exit(1)
def _dumps(self): def _dumps(self):
"""Save the file to disk.""" """Save the file to disk."""
try: try:
with open(self.filename, "w") as handle: with open(self.filename, "w") as handle:
handle.write(dumps(self, indent=4, sort_keys=True)) handle.write(dumps(self, indent=4, sort_keys=True))
except Exception as exception: except Exception as exception:
message = f"Saving file storage failed: {exception}" message = f"Saving file storage failed: {exception}"
self.log.error(message, exc_info=exception) self.log.error(message, exc_info=exception)
exit(1) exit(1)
def __setitem__(self, key, val): def __setitem__(self, key, val):
"""Write data to the file.""" """Write data to the file."""
super().__setitem__(key, val) super().__setitem__(key, val)
self._dumps() self._dumps()
def __delitem__(self, key): def __delitem__(self, key):
"""Remove data from the file.""" """Remove data from the file."""
super().__delitem__(key) super().__delitem__(key)
self._dumps() self._dumps()
def update(self, *args, **kwargs): def update(self, *args, **kwargs):
"""Update the file.""" """Update the file."""
for k, v in dict(*args, **kwargs).items(): for k, v in dict(*args, **kwargs).items():
self[k] = v self[k] = v
self._dumps() self._dumps()

9
start.py

@ -1,10 +1,12 @@
import tomli
import os
import json import json
import os
import tomli
from flask import render_template from flask import render_template
from simplejsonstorage import SimpleJsonStorage
from app import create_app from app import create_app
from column import Column from column import Column
from simplejsonstorage import SimpleJsonStorage
APP = create_app() APP = create_app()
@ -27,6 +29,7 @@ def load_json_file():
) )
return json_file return json_file
if __name__ == "__main__": if __name__ == "__main__":
APP.debug = True APP.debug = True
APP.run(port=5000) APP.run(port=5000)

Loading…
Cancel
Save