![]() |
Доброго времени суток! Совсем недавно вспомнил про свой скрипт на python для работы с мыльниками. Подправив пару багов решил опубликовать. Думаю, что некоторым он будет полезен https://txgate.io/images/smilies/wink.gif О том как запускать python скрипты можно найти в гугле. Ну или на крайняк я документацию написал. Но кому не понятно лучше в гугл https://txgate.io/images/smilies/smile.gif Что он может:<ul><li> Подсчёт (не совсем нужная функция, описывать не буду)</li> <li> Сортировка</li> <li> Именование</li> <li> Парсинг доменов</li> <li> Парсинг доменных зон</li> <li> Формат</li> </ul> Подробнее о каждой приблуде написано в документации. Я лишь опишу кратно (кроме первой) и добавлю несколько годных примеров. Я буду указывать примеры для Linux. Для Windows параметры можно указывать аналогично. Отличается только запуск скрипта. Сортировка Из «грязного» файла достает мыльники в нужном формате. Из одной строки достает только 1 мыльник. В выходном файле нет повторов и каждый мыльник записан в одну строку (потом с этим файлов можно работать для парсинга, именовать емейлы и т.д.). Пример «грязного» файла: John: mailto:[email protected] – email my email : smith @ web, de Hello world V: rolf (at> yahoo dot de ewewe999@ mail.google <punkt> com ssdjfk @ yahoo.cc blabla@exploit dot im fkfkfkf fas; ;;; -- > email: sksksks <at dfjfjf .de dkdkdk ()()() last@mail(dot)com Результат обработки. Выходной файл: [email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected] mailto:[email protected] Я указал слишком уродливый файл. В большинстве случает они выглядят как-то иначе. Например, это может быть .SQL или .LOG файл. Или файл где указан мыльник в каждоый строке, но "окружает" его какая-то дичь. Пример: Из файла emails.txt достать все «хорошие» мыльники и записать их в файл emails_valid.txt. А «плохие» записать в emails_errors.txt: python3 wwe.py sort -f ./data/emails.txt -r ./data/emails_valid.txt -e ./data/emails_errors.txt Присвоение имён Одна из интересных для меня приблуд. Пытается дать имя мыльнику из списка. При рассылке спама можно указывать это имя, чтобы обратится к жертве по имени например. Указываете в качестве входного файла - отсортированный файл (одна строка — один мыльник). Указываете выходной файл, куда будут записаны мыльники по шаблону (для создания шаблона используются параметры: {email}, {name}). Указываете как он будет проверять на наличие имени: жёстко или нет: Жёстко: Имя должно быть явно указано и разделяться знаками или цифрами. Например: smith[email protected], john[email protected], mr.john[email protected]. Не жёстко: Этой проверке достаточно наличие имени в адресе э/п. Например: smith[email protected], elitjohn@aol.com. * В документации написано как работать с русскими мыльниками. Пример: У нас есть файл с адресами из Германии (emails_DE.txt). Нужно «проименовать» их немецкими именами. Немецкие имена лежат в файлах: names_DE_male.txt и names_DE_female.txt. Мы будем использовать жёсткую проверку на имя. Полученные имена мы сохраним в файл emails_DE_with_names.txt. Шаблон для сохранения будем использовать следующий: "Mr. {name}" <{email}> python3 wwe.py names -f ./data/emails_DE.txt -r ./data/emails_DE_with_names.txt -t "\"Mr. {name}\" <{email}>" @./data/names_DE_male.txt @./data/names_DE_female.txt -s Как видите пришлось экранизировать символ ". Кто не знает, что такое поищите инфу в сети https://txgate.io/images/smilies/smile.gif Парсинг доменов Достает адреса из файла с мыльниками по указанным доменам (файл должен быть отсортирован: один мыльник — одна строка). Можно указывать домены без доменной зоны. Текстовые файлы с доменами сохраняются в указанной папке. Пример: У нас есть файл с отсортированными адресами (emails.txt). Нужно достать из него все адреса от: yahoo, google и только alo.com. Сохраним все файлы в папку «result»: python3 wwe.py domains -f ./data/emails.txt -p ./data/result -g yahoo,gmail,aol.com,mail*google Парсинг доменных имён Достает адреса из файла с мыльниками по указанным доменными зонами (файл должен быть отсортирован: мыльник — одна строка). Текстовые файлы с доменами сохраняются в указанной папке. Пример: У нас есть файл с отсортированными адресами (emails.txt). Нужно достать несколько евпропейских адресов: de, fr, be, co.uk, gb, nl, es. Сохраним все файлы в папку «result»: python3 wwe.py zones -f ./data/emails.txt -p ./data/result -g de,fr,co.uk,gb,nl,es Формат Достает мыльник из форматированного файла и записывает его в выходной файл с помощью определенного шаблона. В шаблоне обязательно указывать {email}. В место него вставится мыльник из исходного файла: Пример исходного файла: [email protected] mailto:[email protected] mailto:[email protected] Результат обработки. Выходной файл: (Шаблон: INSERT INTO `emails`(`e`) VALUES ("{email}");) INSERT INTO `emails`(`e`) VALUES ("[email protected]"); INSERT INTO `emails`(`e`) VALUES ("[email protected]"); INSERT INTO `emails`(`e`) VALUES ("[email protected]"); * Результат - SQL-запрос в базу данных Пример: У нас есть файл с мэйлер-демонами (emails_md.txt). Эти адреса нам не нужны. Создадим .SQL файл (delete_md.sql), чтобы удалить их из нашей MySQL базы: python3 wwe.py format -f ./data/emails_md.txt -r ./data/delete_md.sql -t "DELETE FROM `emails` WHERE `e` = '{email}';" --- Если нет желания разбираться в аргументах, то просто запускайте скрипт и дальше следуйте инструкциям. Я рекомендую указывать полные адреса файлов и папок (особенно для пользователей Windows), так будет меньше проблем у не опытных пользователей. --- * Кому нужны файлы с именами некоторых стран могу скинуть сюда Возможно в скрипте есть баги. Если не составит труда, то напишите о них сюда или в жб. Может у кого-то есть интересные предложения по доработке, тоже пишите https://txgate.io/images/smilies/smile.gif Архив: СКРИПТ УТЕРЯН! </img> |
Здравствуйте! На сегодняшний день вы занимаетесь парсингом емейлов? </br> |
All times are GMT. The time now is 08:01 AM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2025, vBulletin Solutions, Inc.