PrimfeedLiker/README.md
2026-01-31 11:23:57 +01:00

1.8 KiB

Primfeed Liker

Architecture

  • PrimfeedDoomscrollScript in src/main/java/de/tamse/primfeedliker/automation/PrimfeedDoomscrollScript.java is the entrypoint.
  • Config loads from src/main/resources/application.properties (or application.yml) and system properties.
  • Selenium WebDriver handles the browser; a DoomscrollState tracks progress and stopping logic.
  • LikedCache persists liked post keys to disk and caps the cache size.

Run

  • Ensure Java 17 and a matching WebDriver (ChromeDriver/GeckoDriver) are available.
  • Start with: ./mvnw spring-boot:run -Dspring-boot.run.main-class=de.tamse.primfeedliker.automation.PrimfeedDoomscrollScript

Configuration (Key Parameters)

  • Selectors (required):
    • primfeed.feed-item-selector
    • primfeed.profile-name-selector
    • primfeed.like-button-selector
    • primfeed.target-profile
  • Login persistence:
    • primfeed.chrome-user-data-dir, primfeed.chrome-profile-dir
    • primfeed.firefox-profile-dir
    • primfeed.manual-login-seconds
  • Doomscroll pacing:
    • primfeed.like-delay-min-ms, primfeed.like-delay-max-ms
    • primfeed.scroll-min-px, primfeed.scroll-max-px
    • primfeed.long-pause-every, primfeed.long-pause-min-ms, primfeed.long-pause-max-ms
    • primfeed.max-scrolls, primfeed.max-items
  • Stop/skip controls:
    • primfeed.max-consecutive-liked (0 disables the stop condition)
    • primfeed.skip-profiles (comma-separated, case-insensitive)
  • Cache controls:
    • primfeed.cache-path (default ${user.home}/.primfeed-liker/liked-posts.txt)
    • primfeed.cache-max-entries (default 50k)
    • primfeed.rescan-window-size, primfeed.max-linked-items

Notes

  • Clear the cache by deleting ~/.primfeed-liker/liked-posts.txt.
  • If you switch accounts or undo likes, clear the cache to avoid stale skips.