A python-based data gathering and statistics application that gathers daily wordle statistics (@wordlestats) and links merges those with the daily winning word. (wordlescraper/)
A front end application is attached, written in Javascript/Svelte/Sveltekit that displays the daily results and allows users to enter in their own wordle results (wordle_stats_frontend/)
Additionally, data analytics/machine learning is performed using the gathered dataset to help determine what factors are most important when it comes to the average number of guesses for a given word. (WordleStatsAnalytics.ipynb)
A conda environment can be built by running the following command in the shell
cd wordlescraper
conda env create -f conda_wordlestats.yml
conda activate wordlestats
credentials should be set up using 'secret_*.json' files located in the 'wordlescraper/wordlescraper/' folder. secret.json Should contain a json dictionary with key 'token' with an active Twitter API key
{"token":"ABCDEFGTWITTERAPIKEYHERE"}
secret_web.json should contain FTP credentials
{"host": "ftphosthere.com", "username": "your_username","password": "your_password_321"}
Optionally - if you would like to access the kaggle word frequency dataset in order to run the anaytics workbook, it can be downloaded from here (or with the kaggle api) once set up with a ~/.kaggle/kaggle.json username and key, run the shell script:
cd wordlestats
bash get_kaggle_frequency_dataset.sh
In order to run in automated fashion, you will need to update your crontab file with the path to your conda distribution and the code itself in the crontab.txt file.
You will also want to update the get_all.sh script with the correct wordlescraper/wordlescraper directory
once that is completed, you can add it to the linux automated cron jobs
crontab crontab.txt
crontab -l
which should add, then display the cron job
node.js - build using:
cd wordle_stats_frontend
npm install
or optionaly
pnpm install