Программа для ускроения ручной проверки url-ов из проверочного листа

Обсуждение распределенного бан-листа
Ответить
bogdan108
Сообщения: 28
Зарегистрирован: Пн дек 07, 2020 16:17

Программа для ускроения ручной проверки url-ов из проверочного листа

Сообщение bogdan108 »

Проблема:
При проверке листа на открытие-закрытие страниц в браузере уходит время, на которое человек с милиардами нейронов превращается в механический автомат с активностью в несколько десятков нейронов, эдакого биоробота. Не сказать чтобы это затраченное время было слишком заметно при размере листа 10-20 пунктов, но при списке в 100 пунктов (на начальном этапе по достижению первых 200 баллов пробовал и такой вариант списка) проблема дала о себе знать.

Решение текущее:
Открываю два окна браузера и располагаю рядом.
Открываю список в правом окне. Зажимаю Ctrl и щёлкаю по ссылкам из списка - каждый url открывается в новой вкладке.
После открытия всех ссылок перетаскиваю вкладку со списком из правого окна в левое.
Прокручиваю список до первого пункта и открываю в правом окне первую вкладку.
Смотрю страницу справа - отмечаю в списке слева.
Список именно слева, так как радиокнопки "да / не знаю / нет" ближе к правому краю страницы, а значит ближе к кнопке закрытия вкладки в правом окне (т.е. экономлю на движениях мышки).
Когда список проверен - закрывается последняя вкладка в правом окне, а с последней вкладкой закрывается и само правое окно.

Задача:
Заиметь маленькое окошко с текстом ссылки и кнопками "Да/Не знаю/Нет", расположить его поверх всех окон где-то в углу экрана и при нажатии на одну из кнопок в этом окне, в браузере должна закрываться вкладка с данным url и открываться новая вкладка со следующим url из проверяемого списка.

Программа написана. На вход требует путь к файлу list.html.

Что уже есть:
- при запуске программа открывает своё окно, парсит файл list.html, берёт первый url из списка и открывает его в новой вкладке браузера;
- при нажатии одной из кнопок "Да/Не знаю/Нет" закрывает вкладку с предыдущим url и открывает вкладку со следующим url;
- программа просто выводит сообщение в консоль о результате проверки;
- есть дополнительные кнопки для быстрой загрузки страницы из веб-кеша web.archive.org и в поисковике google.com;
- программа проверяет наличие доменной записи и код статуса в ответе сервера. Если домен не может быть преобразован в IP-адрес, сервер сбрасывает соединение или сервер выдаёт страницу с ошибкой (код >= 400, https://ru.wikipedia.org/wiki/Список_ко ... ояния_HTTP), то такие ссылки автоматически помечаются как "не знаю" и пользователью для оценки не предлагаются.

Что запланировано:
- контроль результатов в итоговом списке ответов (для возможности окинуть взором итоговую таблицу <url>-<ответ>);
- автоматическая отправка результатов на сервер через POST-запрос;
- сохранение предыдущих ответов и автоматическая подстановка недавних ответов (надоело по 3-5 раз перепроверять одни и те же url, для которых у меня ответ "не знаю");
- быстрое внесение своего ответа для url через POST-запрос (Цитата: <Если Вы хотите исключить правило из DBL - добавьте его в соответствующий лист (через форму пополнения) с ответом "нет".>);
- предварительное открытие вкладки в браузере со следующим проверяемым url-ом, чтобы к моменту закрытия вкладки с текущим проверямым url-ом, следующая страница была уже готова к просмотру и пользователь не ждал пока она догрузится;
- вылизвание кода и публикация на github.

Тема на далёкое будущее:
Необходимо что-то делать с url-ами, для которых доменное имя не резолвится или ответ сервера с кодом статуса >= 400. Возможно, как-то получать список невалидных url-ов с сервера и проверять их пачками на своём компъютере в автоматическом режиме, а результаты передавать на сервер. Тогда у сервера будет возможность принимать решение об исключении url из списка исходя из доступности url со стороны пользователя, а не только со стороны самого себя (со стороны сервера).
Ответ может содержать:
1) флаг успеха резолвинга доменного имени;
2) код статуса ответа сервера (для невалидных страниц сервер отвечают кодом статуса >= 400);
3) размер полученных от сервера данных (страницы-заглушки, вроде apache/ngnix/for-sale, имеют маленький размер и по этому признаку их легко вычленить даже из миллионов записей, а для наиболее встречаюшихся страниц с наименьшими размерами уже можно писать шаблоны даже вручную).
Ответ по конкретному url можно отвправлять только если у него есть какие-то изменения по сравнению с параметрами, полученными самим севером. Т.е. пользователь делиться результатами проверки невалидных доменов с сервером, а сервер - с пользователем.

Что хочу:
- получение списка проверяемых url-ов не с почты, а с веб-страницы через POST-запрос (Сценарий: запустил программу, ткнул "получить лист", выбрал категорию, подтвердил запрос на получение списка, переключился на свои задачи, через несколько минут программа сама скачает список проверяемых url и вылезет поверх всех открытых окон с предложением пройти очередной "экзамен");
- получение списка проверяемых url-ов не в html, а в xml/json-формате (в идеале - json, библиотека его обработки занимает меньше места, чем библиотека обработки xml);
- в ответ на запрос получения списка через POST-запрос, передавать также и примерное время генерации списка (чтобы точно знать когда запрашивать с сервера уже готовый список, а не стучаться по нескольку раз ради ответа "список не найден. ожидайте")

Вопросы к админу:
- вписывается ли функция распространения проверяемого списка путём закачки с сайта, а не получением по почте, в идеологию системы? Может там есть конкретные ограничения техническиого характера или вопросы безопасности, кроме "написал как умел", о которых я не знаю и из-за которых такая функция ЯВНО нежелательна админу. Мне было бы интересно знать хотя бы "возможно" или "точно не сделаю такого".
- какова вероятность внедрения функции получения списка с веб-сайта, а не по почте?
- какова вероятность внедрения функции получения списка в xml/json формате?
- выгодно ли админу сущестование такой программы (ускоряет проверку листов, но может поломать какие-то психологические механизмы, применяемые админом как часть давно устоявшейся системы)?

Slava
Site Admin
Сообщения: 2251
Зарегистрирован: Пт апр 02, 2004 12:34
Контактная информация:

Re: Автоматизация проверки проверочного листа

Сообщение Slava »

Добрый день.
Сделаю список для проверки через апи в json, но нужно время.

Ответить