1

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

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

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

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

1 ответ1

2

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

Одним из очень полезных фактов о комиксах 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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .