v1 of data fetching
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
import typer
|
||||
|
||||
app = typer.Typer()
|
||||
|
||||
|
||||
@app.command()
|
||||
def fetch(file: str, delete_ignore: bool = False):
|
||||
from pathlib import Path
|
||||
from adsbpy.fetch import fetch_lines
|
||||
|
||||
IGNORE_FILE = Path("adsbpy/.ignore")
|
||||
if delete_ignore and IGNORE_FILE.exists():
|
||||
print(f"Deleting ignore file at {IGNORE_FILE}")
|
||||
IGNORE_FILE.unlink()
|
||||
ignore_list = []
|
||||
if IGNORE_FILE.exists():
|
||||
print(f"Found ignore file at {IGNORE_FILE}")
|
||||
with open(IGNORE_FILE) as f:
|
||||
ignore_list = [line.strip() for line in f.readlines() if line.strip()]
|
||||
else:
|
||||
print("No ignore file found, starting fresh.")
|
||||
IGNORE_FILE.parent.mkdir(parents=True, exist_ok=True)
|
||||
IGNORE_FILE.touch()
|
||||
|
||||
with open(file) as f:
|
||||
lines = f.readlines()
|
||||
lines = [line for line in lines if not line.strip() in ignore_list]
|
||||
for line in lines:
|
||||
try:
|
||||
fetch_lines([line])
|
||||
except KeyboardInterrupt:
|
||||
print("Interrupted by user.")
|
||||
break
|
||||
else:
|
||||
ignore_list.append(line.strip())
|
||||
with open(IGNORE_FILE, "a") as f:
|
||||
f.write(line)
|
||||
print("Done.")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
app()
|
||||
Reference in New Issue
Block a user