From https://gist.github.com/lmarkus/8722f56baf8c47045621
Modified @griffero's ruby script from https://gist.github.com/lmarkus/8722f56baf8c47045621?permalink_comment_id=4020434#gistcomment-4020434
- Make sure
docker
anddocker-compose
are installed - Download the list of emojis as a JSON file (see below) and save the file as
./app/emojis.json
- Run
docker-compose up --build
to build the image and start the container in the foreground - Watch the logs as emojis are downloaded
- To stop the container early, use
Ctrl-C
; otherwise, the container should gracefully exit once it's done - Check the logs to see if any downloads encountered network errors and download manually following the directions in the log, which should say something like
Manually download using: curl -o <filename> <url>
- Files will be saved to the
output
folder
Extract the JSON list of emojis as directed in the gist linked at the top of this file.
However, if you have issues with the methods described there, try the following (directions for Firefox):
- Navigate to
https://<workspace>.slack.com/customize/emoji
(you must have permission to access this page) - Open the Network pane in the browser's developer tools and refresh
- Click on filename that starts with
emoji.adminList
oremoji.list
- In the side panel, click on the "Response" tab
- If the
count
is less than or equal to thetotal
: toggle "Raw" to true, copy the JSON, and save to a file - If the
count
is less than thetotal
(adapted from https://gist.github.com/lmarkus/8722f56baf8c47045621?permalink_comment_id=3535987#gistcomment-3535987):- Note down what the
total
is - Right click on the filename that starts with
emoji.adminList
and click "Edit and resend" - Edit the "Request Body" so that
Content-Disposition: form-data; name="count"
is set to thetotal
- Click "Resend"
- Click on the new network request that was just sent
- Click on the "Response" tab and toggle "Raw" to true
- Copy the JSON and save to a file
- Note down what the
- If the resulting JSON is too large:
- Right click on the filename that starts with
emoji.adminList
and click "Edit and resend" - Edit the "Request Body" so that
Content-Disposition: form-data; name="count"
is set to 1000 - Click "Resend"
- Click on the new network request that was just sent
- Click on the "Response" tab and toggle "Raw" to true
- Copy the JSON and save to a file
- Right click on newest
emoji.adminList
filename and click "Edit and resend" - Edit the "Request Body" so that
Content-Disposition: form-data; name="page"
is incremented by 1 - Repeat above steps 3-8 until all pages are downloaded
- Right click on the filename that starts with