Шаблоны для работы с User Agent (часть 1)

OlegR

Client
Регистрация
11.06.2015
Сообщения
252
Реакции
255
Баллы
63

Уважаемые, коллеги и организаторы конкурса. Судя по количеству публикаций на форуме, связанных так или иначе с UA, эта тема актуальна. Планируется разместить в этом конкурсе три шаблона для ZennoPoster (минимальная версия 7.3.2). Первый (user_agent_create.zp) шаблон генерирует или парсит UA для создания json-записи вида:

JSON:
Развернуть Свернуть Копировать
{"ua":"Mozilla/5.0 (Linux; Android 6.0.1; CPH1607 Build/MMB29M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/63.0.3239.111 Mobile Safari/537.36",
"browser":{"name":"chrome webview","version":"63.0.3239.111","major":"63"},"engine":{"name":"blink","version":"63.0.3239.111"},
"os":{"name":"android","version":"6.0.1"},"device":{"vendor":"oppo","model":"cph1607","type":"mobile"},"cpu":{}}

Второй шаблон (user_agent_postgresql.zp) json-записи перегоняет в СУБД PostgreSQL. Третий шаблон (user_agent_browser.zp) делает различные выборки UA из PostgreSQL для нашего применения.

Смысл работы в ZennoPoster с базами данных в гибкости выборки, скорости обработки и надежности. Например, есть БД с 500 000 json-записями UA и можно легко при необходимости выбрать себе мобильные UA нужной марки смартфона. И нужно понимать, что шаблон всегда в рабочем состоянии – нет нужды бегать по сайтам в поисках. PostgreSQL поддерживает json, который обеспечивает нужную гибкость выборки.

user_agent_create.zp
входные настройки.PNG


  • Режим генерации UA - тут три режима. file- импортируем UA из файла(где в каждой строке UA) и делаем json; ibred_scripts - делаем с помощью сниппетов от ibred (https://zennolab.com/discussion/thr...ster-ot-useragenta-do-shriftov-chast-2.44575/); fake_ua_lib - делаем с помощью библиотеки fake_user_agent (https://pypi.org/project/fake_user_agent/)
  • Куда складывать результаты – выбираем путь сохранения json-записей в .txt.
  • Сколько генерировать UA – количество нужных json-записей. Нужно иметь ввиду, что python библиотека fake_user_agent довольно таки «игрушечная» и даёт много дублей, поэтому в режиме fake_ua_lib много записей не сделаешь. Эта опция не работает для импорта UA из файла.
  • Шаг (количество UA в temp) – оставляем по умолчанию 1000.
  • Файл источник UA – указываем путь для .txt файла, откуда импортируем UA.
  • path_exe_fake_lib – путь для fake.exe (режим fake_ua_lib). Этот файл находится в папке /fake_ua_lib в директории шаблона. Оставляем по умолчанию ({-Project.Directory-}fake_ua_lib\fake.exe)
Для работы шаблона нужно поместить файл UAParser.dll в папку /ExternalAssemblies/. Эта библиотека (https://github.com/ua-parser/uap-csharp) обеспечивает парсинг записей UA.

Спасибо за внимание.
 

Вложения

Последнее редактирование:
Не верю я в такие совпадения. Только минуту назад читал топик где брать уа. и тут же эту тему добавили...
 
Второй шаблон (user_agent_postgresql.zp) json-записи перегоняет в СУБД PostgreSQL. Третий шаблон (user_agent_browser.zp) делает различные выборки UA из PostgreSQL для нашего применения.
за это вообще отдельный респект :ay: Базу на серваке надо держать или в облаке можно?
 
  • Спасибо
Реакции: OlegR
за это вообще отдельный респект :ay: Базу на серваке надо держать или в облаке можно?
можно, почему нет) допилить нужно будет немного. В шаблоне бд установлена локально, на пк
 
  • Спасибо
Реакции: Roman48 и OlegR
Такое надо встраивать в функционал Zennoposter по умолчанию , спасибо!
 
  • Спасибо
Реакции: Sanekk
Такое надо встраивать в функционал Zennoposter по умолчанию , спасибо!
функциональность для работы с БД в ZennoPoster есть. Создавайте свои БД чего угодно и пользуйтесь в шаблонах. БД востребована когда много данных, обычно хватает простых списков или таблиц
 
добавил файлы в шаблон и изменил архив user_agent_create.7z во вложениях к теме. Скачайте, пожалуйста, снова архив для корректной работы шаблона.
 

Вложения

Скажите пожалуйста, а зачем это нужно ? то, что встроенно по умолчанию в зенку, разве этого не хватить для работы (если массово не постишь/парсишь)
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)