Commit Graph

63 Commits

Author SHA1 Message Date
Jens Bergmann
c425193b10 feat: add create-config subcommand to generate default config (#577) 2025-07-13 13:09:40 +02:00
Jens Bergmann
1a1633e12d feat: introduce smoke test group and fail-fast test orchestration (#572) 2025-07-09 19:23:52 +02:00
Jens Bergmann
7ff005d18b fix: chores (#565) 2025-07-03 15:12:43 +02:00
Jens Bergmann
5430f5cdc6 feat: update check (#561)
feat(update-check): add robust update check with interval support, state management, and CLI integration

- Implement version and interval-based update checks with configurable settings
- Add CLI command `kleinanzeigen-bot update-check` for manual checks
- Introduce state file with versioning, UTC timestamps, and migration logic
- Validate and normalize intervals (1d–4w) with fallback for invalid values
- Ensure correct handling of timezones and elapsed checks
- Improve error handling, logging, and internationalization (i18n)
- Add comprehensive test coverage for config, interval logic, migration, and CLI
- Align default config, translations, and schema with new functionality
- Improve help command UX by avoiding config/log loading for `--help`
- Update documentation and README with full feature overview
2025-06-27 07:52:40 +02:00
Heavenfighter
f69ebef643 feat: add new update command to update published ads (#549)
Co-authored-by: Jens Bergmann <1742418+1cu@users.noreply.github.com>
2025-06-16 11:46:51 +02:00
sebthom
23910ffbf5 ci: publish code coverage reports 2025-05-15 22:13:38 +02:00
sebthom
6ede14596d feat: add type safe Ad model 2025-05-15 12:07:49 +02:00
sebthom
1369da1c34 feat: add type safe Config model 2025-05-15 12:07:49 +02:00
sebthom
f2e6f0b20b chore: update pyproject.toml 2025-05-12 14:08:50 +02:00
Airwave1981
d87ae6e740 feat: allow auto-restart on captcha (#481)
Co-authored-by: sebthom <sebthom@users.noreply.github.com>
2025-04-26 14:40:47 +02:00
Jens Bergmann
772326003f fix: Separate 'changed' and 'due' ad selectors (#442)
This commit implements a new 'changed' selector for the --ads option that
publishes only ads that have been modified since their last publication.
The 'due' selector now only republishes ads based on the time interval,
without considering content changes.

The implementation allows combining selectors with commas (e.g., --ads=changed,due)
to publish both changed and due ads. Documentation and translations have been
updated accordingly.

Fixes #411
2025-02-28 14:53:53 -05:00
sebthom
9f19cd85bd docs: fix build status badge 2025-02-12 21:40:45 +01:00
Jens Bergmann
4051620aed enh: allow per-ad overriding of global description affixes (#416) 2025-02-11 23:39:26 +01:00
sebthom
e8d342dc68 docs: document ad config defaults 2025-02-10 03:23:33 +01:00
sebthom
08197eabae docs: improve disclaimer 2025-02-03 22:06:30 +01:00
1cu
f01109c956 feat: add hash-based ad change detection (#343) (#388)
Co-authored-by: sebthom <sebthom@users.noreply.github.com>
2025-01-26 23:37:33 +01:00
sebthom
3d27755207 docs: update README 2025-01-26 20:05:28 +01:00
sebthom
7d9b857a46 docs: Update doc 2025-01-20 21:40:28 +01:00
Heavenfighter
ca876e628b fix shipping options when downloading. Fixes #375 (#376) 2025-01-10 16:05:11 +01:00
sebthom
1e782beabc fix: update help text 2024-12-27 13:49:05 +01:00
sebthom
9d54a949e7 feat: add multi-language support 2024-12-27 13:04:30 +01:00
sebthom
a738f0748d docs: add related OSS projects section 2024-12-22 22:19:44 +01:00
sebthom
a876add5a7 feat: by default delete old ads after republishing #338 2024-11-22 12:41:34 +01:00
sebthom
f9fdf4d158 refact: update categories 2024-11-22 12:40:27 +01:00
Moritz Graf
b3cc8ef5cd Fixing missing src directory in README (#288) 2024-04-01 18:09:50 +02:00
sebthom
e7c7ba90be support re-using already open browser window 2024-03-07 23:07:23 +01:00
sebthom
a441c5de73 replace selenium with nodriver 2024-03-07 20:33:23 +01:00
sebthom
3a52f7f629 update doc 2024-01-12 11:37:40 +01:00
sebthom
b723e59ac4 update kleinanzeigen URL 2023-05-15 21:45:57 +02:00
Jeppy
70868395b2 FIX typo 2023-02-25 12:04:34 +01:00
Philipp K
886d812393 FIX Download path not found 2022-12-18 20:11:57 +01:00
Jeppy
45fd4bac9f ADD download shipping options and sell directly
LIMITATION extracts only the cheapest shipping option
2022-12-12 13:18:00 +01:00
Jeppy
e483c003d0 ADD ability to select shipping packages and sell directly 2022-12-12 13:18:00 +01:00
PhilK-7
70a23dbcc7 ADD download --all feature (#139) 2022-11-22 18:52:32 +01:00
PhilK-7
5321b7cd12 Add download command. Fixes #32 (#114) 2022-10-25 22:27:10 +02:00
Peter Simon
728d2cd888 Executable bit for user needs 755 2022-10-03 10:32:32 +02:00
sebthom
1e3c0bee24 add code of conduct 2022-08-21 20:29:55 +02:00
sebthom
f924ed89d0 Support extended glob patterns 2022-06-11 18:55:13 +02:00
sebthom
3964a3a1d3 Allow setting price-type to NOT_APPLICABLE. Addresses #52 2022-03-31 23:26:57 +02:00
sebthom
05cfcdeec8 update doc 2022-03-17 14:52:32 +01:00
sebthom
2597b902be add --keep-old flag 2022-03-12 18:55:49 +01:00
sebthom
15ffb5d402 Update badge 2022-03-12 15:05:21 +01:00
sebthom
7c08214f10 add support for shipping_costs 2022-03-12 13:26:39 +01:00
Oleg Loewen
686b05027d Extend/fix special attributes support (#35) 2022-03-09 16:49:22 +01:00
Oleg Loewen
361b88c843 support special category attributes (#33) 2022-03-07 15:49:12 +01:00
Jan Niggemann
e193a2bdac add example for 3rd-level category conf (#23) 2022-02-21 12:28:05 +01:00
sebthom
a1b0636446 make private window mode configurable 2022-02-17 14:20:22 +01:00
sebthom
26bef5e574 Allow configuration of custom browser profile 2022-02-17 14:02:19 +01:00
sebthom
7ee2d533df allow configuration of additional browser extensions 2022-02-17 13:08:09 +01:00
sebthom
3aad005bdc Fixes #14 Document that quoting of phone numbers is required 2022-02-12 22:10:42 +01:00