├── .devcontainer.json ├── .gitattributes ├── .github ├── ISSUE_TEMPLATE │ ├── feature_request.md │ └── issue.md ├── release-drafter.yml └── workflows │ ├── codeql-analysis.yml │ ├── lint.yml │ ├── release-drafter.yml │ ├── tests.yml │ └── validate.yml ├── .gitignore ├── .pre-commit-config.yaml ├── .ruff.toml ├── .vscode ├── launch.json ├── settings.json └── tasks.json ├── .yamllint ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── config └── configuration.yaml ├── custom_components └── multiscrape │ ├── __init__.py │ ├── binary_sensor.py │ ├── button.py │ ├── const.py │ ├── coordinator.py │ ├── entity.py │ ├── file.py │ ├── form.py │ ├── http.py │ ├── icons.json │ ├── manifest.json │ ├── schema.py │ ├── scraper.py │ ├── selector.py │ ├── sensor.py │ ├── service.py │ ├── services.yaml │ └── util.py ├── hacs.json ├── pyproject.toml ├── renovate.json ├── requirements.txt ├── scripts ├── develop ├── lint └── setup └── tests ├── __init__.py ├── conftest.py ├── fixtures ├── __init__.py ├── html_samples.py └── json_samples.py ├── test_binary_sensor.py ├── test_button.py ├── test_coordinator.py ├── test_entity.py ├── test_file.py ├── test_form.py ├── test_http.py ├── test_http_async.py ├── test_init.py ├── test_scrape_service.py ├── test_scraper.py ├── test_selector.py ├── test_sensor.py ├── test_service.py └── test_util.py /.devcontainer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.devcontainer.json -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | * text=auto eol=lf 2 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.github/ISSUE_TEMPLATE/feature_request.md -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/issue.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.github/ISSUE_TEMPLATE/issue.md -------------------------------------------------------------------------------- /.github/release-drafter.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.github/release-drafter.yml -------------------------------------------------------------------------------- /.github/workflows/codeql-analysis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.github/workflows/codeql-analysis.yml -------------------------------------------------------------------------------- /.github/workflows/lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.github/workflows/lint.yml -------------------------------------------------------------------------------- /.github/workflows/release-drafter.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.github/workflows/release-drafter.yml -------------------------------------------------------------------------------- /.github/workflows/tests.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.github/workflows/tests.yml -------------------------------------------------------------------------------- /.github/workflows/validate.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.github/workflows/validate.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.gitignore -------------------------------------------------------------------------------- /.pre-commit-config.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.pre-commit-config.yaml -------------------------------------------------------------------------------- /.ruff.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.ruff.toml -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.vscode/tasks.json -------------------------------------------------------------------------------- /.yamllint: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/.yamllint -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/README.md -------------------------------------------------------------------------------- /config/configuration.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/config/configuration.yaml -------------------------------------------------------------------------------- /custom_components/multiscrape/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/__init__.py -------------------------------------------------------------------------------- /custom_components/multiscrape/binary_sensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/binary_sensor.py -------------------------------------------------------------------------------- /custom_components/multiscrape/button.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/button.py -------------------------------------------------------------------------------- /custom_components/multiscrape/const.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/const.py -------------------------------------------------------------------------------- /custom_components/multiscrape/coordinator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/coordinator.py -------------------------------------------------------------------------------- /custom_components/multiscrape/entity.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/entity.py -------------------------------------------------------------------------------- /custom_components/multiscrape/file.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/file.py -------------------------------------------------------------------------------- /custom_components/multiscrape/form.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/form.py -------------------------------------------------------------------------------- /custom_components/multiscrape/http.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/http.py -------------------------------------------------------------------------------- /custom_components/multiscrape/icons.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/icons.json -------------------------------------------------------------------------------- /custom_components/multiscrape/manifest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/manifest.json -------------------------------------------------------------------------------- /custom_components/multiscrape/schema.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/schema.py -------------------------------------------------------------------------------- /custom_components/multiscrape/scraper.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/scraper.py -------------------------------------------------------------------------------- /custom_components/multiscrape/selector.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/selector.py -------------------------------------------------------------------------------- /custom_components/multiscrape/sensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/sensor.py -------------------------------------------------------------------------------- /custom_components/multiscrape/service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/service.py -------------------------------------------------------------------------------- /custom_components/multiscrape/services.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/services.yaml -------------------------------------------------------------------------------- /custom_components/multiscrape/util.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/custom_components/multiscrape/util.py -------------------------------------------------------------------------------- /hacs.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/hacs.json -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/pyproject.toml -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/renovate.json -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/requirements.txt -------------------------------------------------------------------------------- /scripts/develop: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/scripts/develop -------------------------------------------------------------------------------- /scripts/lint: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/scripts/lint -------------------------------------------------------------------------------- /scripts/setup: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/scripts/setup -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | """Init tests for Multiscrape integration.""" 2 | -------------------------------------------------------------------------------- /tests/conftest.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/conftest.py -------------------------------------------------------------------------------- /tests/fixtures/__init__.py: -------------------------------------------------------------------------------- 1 | """Test fixtures and sample data for multiscrape tests.""" 2 | -------------------------------------------------------------------------------- /tests/fixtures/html_samples.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/fixtures/html_samples.py -------------------------------------------------------------------------------- /tests/fixtures/json_samples.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/fixtures/json_samples.py -------------------------------------------------------------------------------- /tests/test_binary_sensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_binary_sensor.py -------------------------------------------------------------------------------- /tests/test_button.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_button.py -------------------------------------------------------------------------------- /tests/test_coordinator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_coordinator.py -------------------------------------------------------------------------------- /tests/test_entity.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_entity.py -------------------------------------------------------------------------------- /tests/test_file.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_file.py -------------------------------------------------------------------------------- /tests/test_form.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_form.py -------------------------------------------------------------------------------- /tests/test_http.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_http.py -------------------------------------------------------------------------------- /tests/test_http_async.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_http_async.py -------------------------------------------------------------------------------- /tests/test_init.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_init.py -------------------------------------------------------------------------------- /tests/test_scrape_service.py: -------------------------------------------------------------------------------- 1 | """Test for simple scraping.""" 2 | 3 | 4 | -------------------------------------------------------------------------------- /tests/test_scraper.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_scraper.py -------------------------------------------------------------------------------- /tests/test_selector.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_selector.py -------------------------------------------------------------------------------- /tests/test_sensor.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_sensor.py -------------------------------------------------------------------------------- /tests/test_service.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_service.py -------------------------------------------------------------------------------- /tests/test_util.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/danieldotnl/ha-multiscrape/HEAD/tests/test_util.py --------------------------------------------------------------------------------