Случайный просмотр XKCD?

339
Champaigne Chips

В ходе чтения XKCD я обнаружил, что при случайном просмотре он выглядит смешнее. Тем не менее, так как я прочитал около 2/3 комиксов, я быстро получаю повторяющееся нажатие случайной кнопки, чтобы найти новую. Поэтому я хотел бы найти или создать инструмент, который:

  • создает список всех страниц сайта (например, xkcd.com/*)
  • удаляет страницы из списка, которые есть в истории Firefox
  • случайным образом выбирает из списка не просмотренных страниц и перенаправляет Firefox на эту страницу

Поэтому я думаю, что мог бы запрограммировать usercript для этого. Но я не уверен, как подойти к этому.

Я игнорирую тот факт, что XKCD (не говоря уже о SMBC, Youtube и других) предлагает RSS. Если бы существовала программа для чтения RSS, которая могла бы загружать канал с самого начала и произвольно выбирать из тех, которые не были просмотрены, это было бы предпочтительным, поскольку это ограничивает поиск желаемым контентом. Каков ваш вклад? Знаешь какие-нибудь инструменты для этого?

1
Какую ОС вы используете? terdon 10 лет назад 0
http://stackoverflow.com/questions/9552403/can-a-greasemonkey-script-read-firefox-history-database По крайней мере чтение истории, вероятно, не будет работать из пользовательских скриптов. Squeezy 10 лет назад 1

1 ответ на вопрос

2
peanut_butter

Это общая схема того, как можно это сделать:

Одним из очень полезных фактов о комиксах XKCD является то, что все URL-адреса имеют вид

http://xkcd.com/####/ 

где ####число от 1 до 1230 (на сегодняшний день)

Часть I: Создать новый генератор случайных комиксов

  1. Создает список всех чисел в этом диапазоне
  2. Случайно выбирает номер из списка
  3. Удалить номер из списка
  4. Создать URL-адрес, используя выбранный номер

Теперь самая сложная часть -

Часть II: удалите все комиксы, которые вы уже посетили:

ПРИМЕЧАНИЕ. Эта часть довольно запутанная и не очень портативная, но эй, она работает.

  1. В Firefox - иди, чтобы показать всю историю
  2. Ищи xkcd.com
  3. Перетащите все ссылки в новую папку закладок
  4. Экспортируйте ваши закладки в формате html
  5. Изменить HTML, чтобы удалить все, кроме только что созданной папки
  6. Переберите файл и добавьте все найденные номера в список.
  7. Вычтите этот список из списка Part I

Я понимаю, что я обделил многие детали, но это должно, по крайней мере, дать вам представление о том, как действовать дальше. Похоже, забавный маленький проект - удачи!

Да, это говорит мне, что мне нужно знать, спасибо. Champaigne Chips 10 лет назад 0