Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flow Clicker

A tiny desktop tool that automates a repetitive click → click → scroll task on any web page, without drifting out of alignment over many repetitions.

It was built to bulk-download items from a grid of cards (open a card's menu, click Download, scroll to the next, repeat) but works for any fixed two-click pattern that repeats down a scrolling page.

Why this instead of a plain auto-clicker

A normal macro clicks the same fixed screen coordinates every cycle. Because scrolling is never pixel-perfect, a small error accumulates and after a few dozen cycles the cursor lands outside the target.

Flow Clicker removes the drift: every cycle it takes a screenshot, finds your target icon by image match, and clicks wherever it actually is. There is no running position to accumulate error, so cycle 55 is as accurate as cycle 1. Scrolling can be as rough as you like.

How it works

Each cycle:

  1. Screenshot the screen and locate the icon by template match (OpenCV).
  2. Click the icon.
  3. Click a second point at the same offset from the icon that you recorded once (so the menu item follows the icon).
  4. Scroll down a rough amount.
  5. Repeat until you stop it, a cycle limit is hit, or the icon can't be found for several tries (i.e. the list ran out).

A row-locking heuristic keeps it on the row you anchored, so a grid with many icons on screen doesn't confuse it.

Requirements

  • Windows, macOS, or Linux (X11)
  • Python 3.10+
  • pip install -r requirements.txt

On macOS, grant your terminal Accessibility and Screen Recording permission (System Settings → Privacy & Security).

Install

git clone https://github.com/<your-org>/flow-clicker.git
cd flow-clicker
pip install -r requirements.txt
python flow_clicker.py

On Windows, use py flow_clicker.py.

Setup (4 steps)

  1. Crop the icon. Take a tight screenshot of just the target icon (on Windows: Win+Shift+S), paste into any editor, and save as a PNG. Only the icon, a few pixels of padding is fine.
  2. Load 3-dot PNG in the panel and pick that file.
  3. Hover the icon on the page and press F9.
  4. Open the menu, hover the item to click (e.g. Download), and press F10.

Then set a rough Scroll amount, set Cycles to a small number like 3 for a first test, and press F8.

Hotkeys

Key Action
F9 Set the icon point
F10 Set the second-click point (e.g. Download)
F6 Test: find the icon and move the cursor onto it (no click)
F8 Start / stop
Esc Stop

Tuning

  • Match threshold (0.75–0.9): lower it if the icon isn't found, raise it if it clicks the wrong thing.
  • Scroll: just enough to bring the next card into view. Precision does not matter.
  • Speed: divides all delays. Turn it up once a short test run is clean.
  • Cycles: 0 runs until the icon can no longer be found.

First run checklist

  1. Press F6 and confirm the cursor jumps onto the icon.
  2. Set Cycles = 3, press F8, watch all three land cleanly.
  3. Set Cycles = 0 and run the full batch.

Notes and limits

  • Many rapid browser downloads will trigger a "allow multiple downloads" prompt the first time. Allow it, or set your browser's download folder so it doesn't ask each time.
  • If the target app runs elevated (as administrator), run the terminal as administrator too, or input and screen capture may be blocked.
  • Touchpad/wheel scrolling is not recorded by this tool on Windows; it doesn't need to be, because the tool does its own scrolling.

License

MIT

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages