Migrate to python (#265)

* Add initial python migration

* Add pylint

* Add pre-commit

* Add Dockerfile

* Add expression matching

* Use shelve to store previous matches

* Add notifications

* Calculate post age

* Update README.md
This commit is contained in:
Dave Gallant
2023-02-20 23:23:29 -05:00
committed by GitHub
parent 4dbb9f97e8
commit 9ba64a3de5
33 changed files with 1938 additions and 2121 deletions

View File

View File

@@ -0,0 +1,8 @@
class Offer:
# pylint: disable=unused-argument
def __init__(self, dealer_name, url, **kwargs):
self.dealer_name = dealer_name
self.url = url
def __repr__(self):
return f"Offer({self.url})"

View File

@@ -0,0 +1,8 @@
class Post:
# pylint: disable=unused-argument
def __init__(
self,
body: str,
**kwargs,
):
self.body = body

View File

@@ -0,0 +1,23 @@
from .offer import Offer
class Topic:
# pylint: disable=unused-argument
# pylint: disable=too-many-arguments
def __init__(
self,
topic_id: int,
title: str,
post_time: str,
web_path: str,
offer: dict,
**kwargs,
):
self.topic_id = topic_id
self.title = title
self.post_time = post_time
self.web_path = web_path
self.offer = Offer(**offer)
def __repr__(self):
return f"Topic({self.title})"