Use configuration in foursquare module
This commit is contained in:
parent
e11adb3a09
commit
661218ebe9
2 changed files with 28 additions and 4 deletions
14
my/common.py
14
my/common.py
|
@ -93,3 +93,17 @@ def setup_logger(logger, level=None, format=None, datefmt=None):
|
||||||
|
|
||||||
|
|
||||||
PathIsh = Union[Path, str]
|
PathIsh = Union[Path, str]
|
||||||
|
|
||||||
|
|
||||||
|
# TODO use glob or something? see in promnesia
|
||||||
|
def get_files(pp: PathIsh, glob: str) -> List[Path]:
|
||||||
|
"""
|
||||||
|
Helper function to avoid boilerplate.
|
||||||
|
"""
|
||||||
|
path = Path(pp)
|
||||||
|
if path.is_dir():
|
||||||
|
return list(sorted(path.glob(glob)))
|
||||||
|
else:
|
||||||
|
# TODO FIXME assert matches glob??
|
||||||
|
raise RuntimeError()
|
||||||
|
return path
|
||||||
|
|
|
@ -1,22 +1,31 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
from datetime import datetime, timezone, timedelta
|
from datetime import datetime, timezone, timedelta
|
||||||
from typing import List, Dict, NamedTuple, Union, Any, Tuple, Set
|
|
||||||
from itertools import chain
|
from itertools import chain
|
||||||
|
from pathlib import Path
|
||||||
|
from typing import List, Dict, NamedTuple, Union, Any, Tuple, Set
|
||||||
import json
|
import json
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
|
||||||
# TODO pytz for timezone???
|
# TODO pytz for timezone???
|
||||||
|
|
||||||
from kython import safe_get
|
# TODO FIXME
|
||||||
|
from kython import safe_get # type: ignore
|
||||||
|
|
||||||
|
from .common import get_files
|
||||||
|
|
||||||
# TODO actually i'm parsing FSQ in my gmaps thing
|
# TODO actually i'm parsing FSQ in my gmaps thing
|
||||||
_BPATH = Path('/L/backups/4sq')
|
# TODO eh?
|
||||||
|
|
||||||
def get_logger():
|
def get_logger():
|
||||||
import logging
|
import logging
|
||||||
return logging.getLogger("fsq-provider")
|
return logging.getLogger("fsq-provider")
|
||||||
|
|
||||||
|
|
||||||
|
def _get_exports() -> List[Path]:
|
||||||
|
from my_configuration import paths
|
||||||
|
return get_files(paths.foursquare.export_path, '*.json')
|
||||||
|
|
||||||
|
|
||||||
class Checkin:
|
class Checkin:
|
||||||
def __init__(self, j) -> None:
|
def __init__(self, j) -> None:
|
||||||
self.j = j
|
self.j = j
|
||||||
|
@ -53,10 +62,11 @@ class Place:
|
||||||
# raise RuntimeError()
|
# raise RuntimeError()
|
||||||
|
|
||||||
|
|
||||||
|
# TODO need json type
|
||||||
|
|
||||||
def get_raw(fname=None):
|
def get_raw(fname=None):
|
||||||
if fname is None:
|
if fname is None:
|
||||||
fname = max(_BPATH.glob('*.json'))
|
fname = max(_get_exports())
|
||||||
j = json.loads(Path(fname).read_text())
|
j = json.loads(Path(fname).read_text())
|
||||||
assert isinstance(j, list)
|
assert isinstance(j, list)
|
||||||
|
|
Loading…
Add table
Reference in a new issue