← Back to projects PERSONAL PROJECT / PYTHON + AUTOMATION

Soletra
Solver.

Seven letters, one required letter, and many possibilities. I turned the puzzle into a flow that reads the board, filters word lists, and tries candidates in the browser.

View source Python · Selenium · word filtering
THE SEVEN LETTERS

H must appear in every word.

MINI LAB / LETTER FILTER

Which word makes it through?

Enter a word to see the three rules that narrow the list before the script tries each candidate.

01 At least 4 letters ✓
02 Contains H ✓
03 Uses only the 7 letters ✓

SONHO passes the letter filter.

01 / THE CHALLENGE

Finding words is a filtering problem.

In Soletra, the center letter is required and six more letters complete the allowed set. Instead of trying random combinations, I started with Portuguese word lists and discarded candidates that did not fit the board.

02 / THE FLOW

From board to attempt.

01

Read

Selenium opens the game and identifies the center letter and six outer letters on the page.

02

Prepare

The script combines an accent-free word list, past answers, and verb forms to build candidates.

03

Filter

Words need four or more letters, the center letter, and no forbidden letters. I then sort by length and alphabetically.

04

Try

Selenium types and submits each candidate. The game decides which words it accepts.

03 / THE HARD CHOICE

A big dictionary still needs judgment.

A word can appear in a verb list and have another use too. Removing every verb form could erase possible answers, so I separate infinitives before subtracting some conjugations.

The automation also depends on the page structure. The code reads letters from the game’s elements and submits words through the browser; changes to that interface mean revisiting the selectors.

04 / RUNS

Three recorded rounds.

The README keeps three rounds with different outcomes. They show the filter and automation in use, and how much the vocabulary of each board matters.

59/5955 seconds
76/911 min 25 s
44/5846 seconds

Want to talk about the next project?

Send email