freetimed

freetimed

Пикабушник
4214 рейтинг 191 подписчик 19 подписок 37 постов 8 в горячем
Награды:
5 лет на Пикабу
9

Парсер для Лиги Дня Рождения v2.0

Написал тут вторую версию парсера, плюс ещё очень удобное приложение для компьютера. Благодаря этому я уже могу поздравить @Zanco, @timofey9, @BesAng, @NeoGalaxy, @228332, @AnnaDmitrievna, @Zicker, @vaha39, @Enaisha, @gunnner, @Renaljalja, @m1kk, @orientman, @todausss, @morr1son, @Katazza, @Dotsenko.ms, @iMarti, @Kuchkin, ведь у всех у них сегодня день рождения! Юху! Никакая ручная сортировка не применялась, эти ники программа выдала сама.

@Midzukawa, вот оно:

Парсер для Лиги Дня Рождения v2.0

Во-первых, новая версия скрипта для браузера, его нужно вставить из ссылки.

Во-вторых, программа для компьютера

Нужно самому нажимать на кнопку "показать все комментарии", до тех пор, пока все не раскроются, и запустить скрипт. Затем к Вам скачается файл с результатами. В программе нажать кнопку "загрузить файл с комментами" и выбрать загруженный файл.

Сортировка

Выберите нужные опции, а затем кнопку "сортировать".

-"показывать только непонятные": показывать комменты, дата рождения авторов которых неизвестна

-"показывать только понятные": показывать комменты, дата рождения авторов которых известна

-"показывать только за дату": показывать комменты, дата рождения авторов которых является датой в поле ниже. Год не имеет значения.

Изменение

При выборе коммента в списке слева, можно воспользоваться меню "коммент" справа внизу. Вам доступен номер коммента (то, что идёт в ссылке после слов #comment), пользователь, оставивший его, и дата его рождения, если известна. При нажатии на кнопку "показать коммент" Вы можете увидеть текст коммента. При нажатии на кнопку "задать дату" сохраняется дата рождения этого пользователя, указанная в поле выше, но ровно до закрытия программы.

Показать полностью 1
5

Парсер для Лиги Дня Рождения

Недавно @Midzukawa опубликовал этот пост, а под ним этот комментарий:

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

Итак, уважаемый @Midzukawa, готов представить тебе мой парсер, написанный на коленке за 5 минут. Что он делает:

1. Имитирует нажатие "показать все комментарии" до тех пор, пока все из них не будет показаны

2. Распознаёт даты, в том числе названия месяцев

3. Выводит всё в файл

4. В случае ошибки выделяет этот коммент среди остальных в файле. Вот так:

Парсер для Лиги Дня Рождения

Итак, как его использовать:

1. Открыть, внимание, пост с новой версии Пикабу!

2. Открыть консоль (если у Вас Google Chrome, то нажать F12)

3. В консоли открыть вкладку "Console"

4. Вставить такой код:

var comments = document.getElementsByClassName("comment__content");
var more = document.getElementsByClassName("comments__more-button");
while(more[0].style.display != "none"){
more[0].click();
await new Promise(resolve => setTimeout(resolve, 2000));
}
var textToSave = "---PIKALOGGER[1]---\r\n";
for(var i = 0; i < comments.length - 1; i++){
var comm = comments[i].innerText.replace(/[^a-zA-Zа-яА-Я0-9 .:!?]/g, "");
textToSave = textToSave.concat(comm);
var numon = comments[i].innerText.replace(/[^0-9.]/g, "");
var dates = numon.split(".", 2);
var month = dates[1];
if(comm.toLowerCase().includes("январ") && (month == "" || month == undefined)){
month = "01";
} else if(comm.toLowerCase().includes("феврал") && (month == "" || month == undefined)){
month = "02";
} else if(comm.toLowerCase().includes("март") && (month == "" || month == undefined)){
month = "03";
} else if(comm.toLowerCase().includes("апрел") && (month == "" || month == undefined)){
month = "04";
} else if(comm.toLowerCase().includes("ма") && (month == "" || month == undefined)){
month = "05";
} else if(comm.toLowerCase().includes("июн") && (month == "" || month == undefined)){
month = "06";
} else if(comm.toLowerCase().includes("июл") && (month == "" || month == undefined)){
month = "07";
} else if(comm.toLowerCase().includes("август") && (month == "" || month == undefined)){
month = "08";
} else if(comm.toLowerCase().includes("сентябр") && (month == "" || month == undefined)){
month = "09";
} else if(comm.toLowerCase().includes("октябр") && (month == "" || month == undefined)){
month = "10";
} else if(comm.toLowerCase().includes("ноябр") && (month == "" || month == undefined)){
month = "11";
} else if(comm.toLowerCase().includes("декабр") && (month == "" || month == undefined)){
month = "12";
}
var possibleDate = "=========================================================================================================================Возможная дата: ???";
if(dates[0] != undefined && dates[0] != "" && month != undefined && month != ""){
var possibleDate = "====================================================================================Возможная дата: ".concat(dates[0]).concat(".").concat(month);
}
textToSave = textToSave.concat("\r\n").concat(possibleDate).concat("\r\n---NEWCOMMENT---\r\n");
}
var textToSaveblob = new Blob([textToSave], {type:"text/plain"});
var textToSaveurl = window.URL.createObjectURL(textToSaveblob);
var downlink = document.createElement("a");
downlink.download = "Pikabu-comments-parsed.txt";
downlink.href = textToSaveurl;
document.body.appendChild(downlink);
downlink.click();

5. Нажать Enter

6. Чуть подождать

7. К вам скачался файл с результатами

8. ???

9. PROFIT

Ну и да, я родился девятого августа)

Показать полностью
3

Автокликер для сосулек. Мой вариант

Всем привет! Я считаю новогодние сосульки на Пикабу не игрой на ловкость и внимательность, а конкурсом по умению программировать. Ну вот так как-то и родился IcicleClicker.

Как пользоваться?

Просто введите значения X1, X2 и Y которые будет пробегать кусор (их легко можно найти с помощью кнопки PrtSc и Paint'а) и нажмите кнопку "Запуск!". Для остановки процесса нажмите Esc на клавиатуре.

X1 (самое левое поле ввода) - начальная позиция курсора. Не должна задевать панель заадач (если она у вас слева).

X2 (поле ввода посередине) - конечная позиция курсора. Не должна задевать панель задач (если она у вас справа) и линию прокрутки страницы в браузере.

Y (самое правое поле ввода) - позиция курсора сверху. Не должна задевать панель задач (если она у вас сверху) и элементы управления браузером.

P.S. Исходники в комментах

Показать полностью 1
307

//бухой, пофиксю позже (перевод с хабра)

Примечание от переводчика: на создание этого поста натолкнула следующая ветка комментариев:

//бухой, пофиксю позже (перевод с хабра)
long long ago; /* давным-давно в далёкой-далёкой галактике */
#define TRUE FALSE //Удачной отладки, сосунки!
//
// Уважаемый коллега,
//
// Как только вы попытались оптимизировать этот код,
// и поняли, насколько это трудно,
// пожалуйста, прибавьте единицу к этому счетчику, как предупреждение
// следующему человеку:
//
// количество_часов_потраченных_тут = 42
//НЕ УДАЛЯЙТЕ ЭТУ СТРОЧКУ. НЕ ОПТИМИЗИРУЙТЕ ЭТУ СТРОЧКУ. ЭТО ПРИВЕДЁТ К ОЧЕНЬ НЕОЖИДАННОМУ БАГУ, КОТОРЫЙ ТРУДНО УЛОВИТЬ.
//какого черта?
/* тупой хак, потому что Internet Explorer - отстой */

С сайта microsoft.com

<!--Может ли наша домашняя страница быть лучше? Заинтересованы в её создании? http://www.amazon.jobs/... -->
/* ВНИМАНИЕ: код дальше заставит Вас плакать,
*  снизу есть хрюшка для Вашей безопасности.
*/

Затем было изображение свиньи

je очередной_чёртов_прыжок_из_за__out_of_range
; BP всегда используется, с остальными регистрами можно свободно еб*ться
//Когда я писал это, только Бог и я знали, что я делаю
//Теперь только Бог
//Иногда я верю, что компилятор игнорирует мои комментарии
//бухой, пофиксю позже
//Этот код отстой, ты это знаешь, и тоже.
//Иди дальше и называй меня идиотом потом
//Хьюстон, у нас проблема
//Мистер Компилятор, пожалуйста, не читай это
/* Если ты читаешь это, я хочу, чтобы ты знал, что за мной теперь, возможно, следит ФБР, потому что я загуглил “как убить детей, оставив родителей живыми”. Так что да, Линукс брутален */
<!-- Факт: Чак Норрис ненавидит таблицы -->
/* Пожалуйста, работай */
//Джон, пожалуйста, исправь ошибки
//Абрам, пожалуйста, исправь ошибки
//Абрам посылает вас обоих *запрещено правилами сообщества*
//Это исключение никогда не должно произойти, если всё же оно произошло... О БОГИ, ПОМОГИТЕ НАМ!
#Хватит использовать "анал" как название переменной!
#Пожалуйста, хватит!
#Используйте "анализировать", "xbvvzr", как Вы хотите, но, пожалуйста, не "анал_вставить" и "анал_проверить"
Показать полностью
209

Простая и красивая цветомузыка на Новый год 

Всем привет! Уже семнадцатое декабря, а новогоднего настроения всё нету. Поэтому было принято решение сделать цветомузыку из деталей, которые оказались под рукой. А именно:

Arduino Uno. Изначально хотел использовать Nano, но она где-то потерялась в закромах шкафа. Можно использовать и Nano, если хотите.

Светодиодная лента на чипах WS2812B. Это специальные светодиоды, цвет которому можно задать в общей ленте в отдельности.

Резистор на 330 Ом. Он пригодится при подключении ленты.

Блок питания на 5 Вольт. 100 светодиодов тратят один Ампер. У меня 28 светодиодов, вполне хватит второго порта USB с компьютера

Аудиоразъём. Это для ввода звука.

Провода.

Схема:

Для Arduino Nano:

Собственно, скетч. Все настройки подписаны.


Соединяем всё по схеме, открываем Arduino IDE. Заходим в Скетч>Подключить библиотеку>Управлять библиотеками. В появившемся окне в поле "отфильтровать результаты поиска" пишем "FastLED"

Выбираем последнюю версию и нажимаем "Установка". Ждём окончания установки. По ссылке копируем код и вставляем в скетч. Определяем порт, к которому подключена Arduino:

1. Жмём Win+R, в появившемся окне вводим "devmgmt.msc" (без кавычек)

2. Раскрываем список "Порты (COM и LPT)"

3. Видим, что наш порт - COM4. Запоминаем, идём в Arduino IDE.

4. Идём по такому адресу, выбираем наш порт:

Нажимаем Ctrl+U, дожидаемся конца загрузки прошивки, подключаем звук и наслаждаемся). Ну, почти. Открываем плоттер (Ctrl+Shift+L), выставляем скорость 115200 бод и смотрим график. Стараемся настроить громкость на выходном устройстве (например, компьютер, телефон, и т.д.) так, чтобы красная и синяя линии не были больше 255.

Вот теперь включаем и наслаждаемся) Спасибо, что дочитали до конца.

Показать полностью 6
7

Баг в новой настольной версии Пикабу

Всем привет! (подписчики, подождите пожалуйста, скоро выйдет новая часть). Мне очень понравился новый дизайн Пикабу, все эти иконки, меню... Но вот одна проблема: с новыми версиями приходят и новые баги. В частности, как и этот.


Суть проблемы: была введена возможность смотреть количество плюсов и минусов к комментариям. Вот так:

Но при изменении рейтинга, если не перезагрузить страницу, числа останутся теми же:

Предлагаю при изменении рейтинга подгружать количество плюсов и минусов. Спасибо!

ОС: Windows 10, сборка 15063.726

Браузер: Google Chrome 62.0.3202.94

Устройство: Acer Aspire V3-771G

Показать полностью 2
Отличная работа, все прочитано!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества