Набор шаблонов и сниппетов ZennoPoster + C# для самообучения

LaGir

Client
Регистрация
01.10.2015
Сообщения
227
Благодарностей
927
Баллы
93
Приветствую всех!

Представляю вашему вниманию набор открытых демонстрационных шаблонов и сниппетов ZennoPoster, предназначенных для самостоятельного изучения и использования в качестве заготовок.
Все шаблоны написаны на C#, практически весь код закомментирован, что за что отвечает.

Набор предназначен для тех:
1) кто хочет лучше ориентироваться в C#-сниппетах;
2) кто занимается или планирует заниматься созданием шаблонов ZennoPoster в плотной связке с C#;
3) кому не хватает практических примеров по ZennoPoster+C#;
4) кто устал от кубиков и хочет помучить себя изучением тематического кода в рамках объектной модели ZennoPoster. :-)

Рекомендуемый уровень - базовое понимание C#-сниппетов, знание, что это вот за штука.
Если этого нет, а желание двигаться в этом направлении есть - рекомендую принять участие в ближайшем повторе ZennoPro Academy или ZennoPoster + C#. Бот в 3 этапа. Там есть хорошо и компактно преподнесенная необходимая база.
Если же вы маститый котэ-кодер, то вряд ли найдёте для себя что-то интересное. :-) Хотя, кто знает :bk:

Текущий состав набора.

1. Проект парсера яндекса в 9 вариантах реализации

Варианты шаблона.

1. Простой парсер. Самая простейшая реализация на C#, используются простые и понятные конструкции. Выгрузка результатов парсинга в таблицу проекта.
2. Парсер с перебором страниц. Добавлены алгоритм перехода на следующие страницы и возможность задать количество страниц, с которых нужно снять данные, по каждому ключевому запросу.
3. Парсер с выбором региона. В яндексе можно задать регион, в котором будет осуществляться поиск. В этом варианте рассмотрено добавление такого функционала.
4. Парсер со входными настройками. Показан принцип вынесения настроек шаблона во входные настройки. Помимо прочего, в шаблон добавлены случайные паузы в диапазоне, задаваемом во входных настройках.
5. Парсер с проверками. При работе шаблона возможны внештатные ситуации, их нужно стараться предусмотреть и сделать грамотную обработку ошибок. Добавлен функционал проверок на корректность значений из входных настроек, проверок доступности элементов страницы при парсинге.
6. Парсер на GET-запросах. В этом варианты представлен предыдущий шаблон, переделанный под простейший вариант парсинга через GET-запросы.
7. Парсер на GET-запросах (HtmlAgilityPack). Другой вариант парсера на запросах, с помощью библиотечки HtmlAgilityPack.dll (парсинг результата запроса через XPath). Уже полностью без использования браузера.
8. Парсер с выгрузкой в базу данных MySQL. В этом варианте собранные данные сразу отправляем в табличку в БД. Для работы с базой используем стандартные методы ZennoPoster.Db.
9. Парсер с выгрузкой в базу данных SQLite. Пример работы с локальной базой данных SQLite, используем dll-библиотеку System.Data.SQLite.
+ Бонусный сниппет для 9 варианта. Получаем данные из БД и сохраняем их в Excel с помощью библиотечки EPPlus. При этом рассматриваем усложненный вариант - делаем различные выборки на разные листы, на отдельном листе создаём содержание со ссылками.
Также в бонусном сниппете используются методы из Общего кода (тоже с комментариями).

2. Проект с разбором виртуальной мыши FullEmulationMouse
В этом проекте дано описание всех доступных в настоящий момент методов и свойств FullEmulationMouse, с примерами использования. А именно:
  • FullEmulationMouseMoveToHtmlElement - метод перемещения курсора мыши к заданному элементу
  • FullEmulationMouseMove - метод перемещения курсора мыши к заданным координатам
  • FullEmulationMouseClick - метод клика мышью
  • FullEmulationMouseMoveAboveHtmlElement - метод эмуляция чтения заданного элемента
  • FullEmulationMouseCurrentPosition - свойство, возвращающее текущую позицию мыши
  • FullEmulationMouseSetOptions - метод, устанавливающий некоторые параметры мыши
  • FullEmulationMouseWheel - метод эмуляции прокрутки колесиком мыши
  • FullEmulationMouseDragAndDrop - метод эмоляции действия перетаскивания "Drag-and-Drop"
  • FullEmulationMouseSetScrollBorder - метод для установки положения курсора мыши относительно края страницы во время прокрутки
Помимо прочего, в виде комментариев в сниппетах описаны некоторые нюансы, которые полезно знать при использовании этой реализации виртуальной мыши.
Для создания практических примеров использовался сайт techcrunch.com.

3. Генератор логинов
Данный проект включает в себя несколько вспомогательных классов в Общем коде по генерации логинов, паролей и обратной транслитерации. В сниппетах проекта приведены примеры их использования.

Реализация генератора логинов базируется на формировании "человеческих" логинов для регистраторов почт. Для генерации используются списки реальных имён и фамилий (доступны русскоязычные и англоязычные, списки идут в комплекте).
Например, регистратору нужно сгенирировать случайным образом имя и фамилию, логин для аккаунта. С помощью готовых методов можно получить, скажем, Ивана Иванова и сгенерировать соответствующий логин. Какие примерно варианты могут получиться:
ivanov.ivan
ivan7ivanov
ivanov.ivan77
ivan.ivanov4
ivan.i.ivanov

4. Постер гистов на GitHub
Данный проект предназначен для демонстрации практического использования параллельных циклов.
Проект представляет собой постер сниппетов на POST-запросах через API. В качестве ресурса был выбран gist.github.com, на котором можно публиковать свои сниппеты и заметки.
В проекте присутствуют 4 варианта такого постера:
  • однопоточный
  • стандартный многопоток
  • параллельные запросы
  • параллельные запросы с контролем потоков
Каждый вариант - в своём сниппете.

+ Мини-обзоры по темам
  • Ловля капч
  • Входные настройки на WPF
  • Лямбда-выражения
  • Основы многопотока
  • Параллельные циклы
  • Отлов ошибок в C#-сниппетах ProjectMaker
  • Временная почта для тестов
По формату мини-обзоры близки к конкурсным статьям ZennoLab. По содержанию - представляют собой разбор темы в плане технической реализации на C#-сниппетах в ZennoPoster.


Отзывы


Приобрести комплект по символической цене 375 р. можно в любой момент, в соответствующей темке на складчике. При выполнении небольшого описанного там условия можно получить бонусом ещё пару шаблонов.
Вне складчика купить тоже можно, написав в ЛС или по контактам отсюда. В этом случае стоимость основного набора 500 р., если дополнительно нужны бонусные шаблоны +200 р.
 
Последнее редактирование:

Juniorcpa

Client
Регистрация
27.05.2014
Сообщения
2 031
Благодарностей
1 286
Баллы
113
Приобрел данный комплект. Мало того что всё приятно и по полочкам, так и поддержка от автора просто на высшем уровне.
 
  • Спасибо
Реакции: LaGir

LaGir

Client
Регистрация
01.10.2015
Сообщения
227
Благодарностей
927
Баллы
93
Акция
При приобретении основного набора напрямую (500 р.) бонусные шаблоны бесплатно (вместо 200р.)

Предложение действует 3 дня, до 23:59 МСК 1.07.2018 :-)
 

leha52rus

Client
Регистрация
01.06.2017
Сообщения
266
Благодарностей
91
Баллы
28
Изучив данный курс я смогу накодить кнопулю Бабло ?
Шутка :D
Вопрос, насколько нужно быть продвинутым в С# ?
 

LaGir

Client
Регистрация
01.10.2015
Сообщения
227
Благодарностей
927
Баллы
93
Вопрос, насколько нужно быть продвинутым в С# ?
4 абзац как раз об этом :-)
Рекомендуемый уровень - базовое понимание C#-сниппетов, знание, что это вот за штука.
Если этого нет, а желание двигаться в этом направлении есть - рекомендую принять участие в ближайшем повторе ZennoPro Academy или ZennoPoster + C#. Бот в 3 этапа. Там есть хорошо и компактно преподнесенная необходимая база.
Если же вы маститый котэ-кодер, то вряд ли найдёте для себя что-то интересное. :-) Хотя, кто знает :bk:
 
  • Спасибо
Реакции: leha52rus

LaGir

Client
Регистрация
01.10.2015
Сообщения
227
Благодарностей
927
Баллы
93
Прямые продажи вновь доступны.

Ну и заодно акция, 2 года не было, почему бы и нет.
Акция
При приобретении основного набора напрямую (500 р.) бонусные шаблоны бесплатно (вместо 200р.)
Предложение действует 3 дня, до 23:59 МСК 14.08.2020
 
  • Спасибо
Реакции: Koqpe

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