mirror of
https://github.com/dgtlmoon/changedetection.io.git
synced 2026-05-01 23:30:33 +00:00
5669509255
Build and push containers / metadata (push) Has been cancelled
Build and push containers / build-push-containers (push) Has been cancelled
Publish Python 🐍distribution 📦 to PyPI and TestPyPI / Build distribution 📦 (push) Has been cancelled
ChangeDetection.io App Test / lint-code (push) Has been cancelled
Publish Python 🐍distribution 📦 to PyPI and TestPyPI / Test the built package works basically. (push) Has been cancelled
Publish Python 🐍distribution 📦 to PyPI and TestPyPI / Publish Python 🐍 distribution 📦 to PyPI (push) Has been cancelled
ChangeDetection.io App Test / test-application-3-10 (push) Has been cancelled
ChangeDetection.io App Test / test-application-3-11 (push) Has been cancelled
ChangeDetection.io App Test / test-application-3-12 (push) Has been cancelled
ChangeDetection.io App Test / test-application-3-13 (push) Has been cancelled
CodeQL / Analyze (javascript) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
25 lines
1.0 KiB
Markdown
25 lines
1.0 KiB
Markdown
# Change detection post-processors
|
|
|
|
The concept here is to be able to switch between different domain specific problems to solve.
|
|
|
|
- `text_json_diff` The traditional text and JSON comparison handler
|
|
- `restock_diff` Only cares about detecting if a product looks like it has some text that suggests that it's out of stock, otherwise assumes that it's in stock.
|
|
|
|
Some suggestions for the future
|
|
|
|
- `graphical`
|
|
|
|
## API schema extension (`api.yaml`)
|
|
|
|
A processor can extend the Watch/Tag API schema by placing an `api.yaml` alongside its `__init__.py`.
|
|
Define a `components.schemas.processor_config_<name>` entry and it will be merged into `WatchBase` at startup,
|
|
making `processor_config_<name>` a valid field on all watch create/update API calls.
|
|
The fully merged spec is served live at `/api/v1/full-spec`.
|
|
|
|
See `restock_diff/api.yaml` for a working example.
|
|
|
|
## Todo
|
|
|
|
- Make each processor return a extra list of sub-processed (so you could configure a single processor in different ways)
|
|
- move restock_diff to its own pip/github repo
|