Скрыть приветствие

[?]

А ещё есть бесплатный VPN, без авторизации, логов и ограничений:

  1. Инструкция по участию в рескладчинах тут.
    Инструкция по организации тут.
    Организовывать в этом разделе могут любые пользователи!
    Чем больше народу тем меньше взнос!
    Если участников 0 то взнос большой, не пугайтесь, минимальное количество участников 2. При 2 участниках цена уже становится приятной)
    Не переводите ничего организаторам на личные кошельки. Оплата складчин осуществляется автоматически с внутреннего счета пользователя. Так мы защитим Вас от недобросовестных оргов.
Скрыть объявление
Подписывайся на наш канал в Телеграм!
Каждый день форум постит туда самую популярную тему! Последняя информация о работе форума и новости сначала появляются там!
А ты подписался?
Скрыть объявление
Создай своё зеркало девсайда!
Привяжи к форуму свой домен, раздай его друзьям и ты будешь иметь доступ к форуму даже если нас заблокирует роскомнадзор!
А ты обезопасился?

[ZennoPoster] SibboraHelper 2.0 или проекты на C# так же просто, как на кубиках

Тема в разделе "Бизнес и свое дело", создана пользователем Collab_Bot, 5 фев 2018.

Этап:
Набор участников
Цена:
3500.00 ₽
Участников:
1 из 10
Организатор:
Отсутствует
Тип складчины:
Рескладчина
Источник:
Ссылка на продажник
10%
Расчетный взнос:
404.25 ₽
  • Участники покупки:
    1. LeonidV;

  1. ​Долгое время библиотека SibboraHelper развивалась в составе другого моего продукта - ZennoPro Academy. В то время библиотека была (по моему мнению) скорее тестовым полигоном, чем полностью законченным решением. Тем не менее это не помешало тому чтобы на базе первой версии появилось множество проектов, в том числе и коммерческих.

    Вторая версия библиотеки призвана перевернуть всеобщее представление о процессе создания проектов ZennoPoster с использованием языка программирования C#. Основная идея, заложенная в SibboraHelper 2.0 - сместить фокус с программирования отдельных действий над переменными и объектами к программированию одной строкой отдельных операций на сайте.

    В процессе разработки библиотеки была поставлена задача предоставить разработчикам проектов следующие возможности:
    1) Адаптировать библиотеку для работы с конкретным сайтом;
    2) Выполнять один и тот же код как с полной эмуляцией мыши и клавиатуры, так и без неё;
    3) Реализовывать проверки состояния страницы одной строкой;
    4) Использовать результаты предыдущих операций в последующих операциях;
    5) Предоставлять разработчику выбор из нескольких вариантов для действий при неудаче;
    6) Анализировать причины ошибок не на основе кратких логов, а на основе полной информации.

    Давайте поговорим о каждом пункте подробнее.

    1. Библиотека может быть приспособлена для работы с конкретным сайтом.


    Казалось бы, что может быть проще чем найти на странице элемент с тегом input:checkbox, и кликнуть по нему? Или выбрать значение из выпадающего списка (теги select-opiton)? На древних сайтах - действительно всё относительно просто, хотя и там придётся сначала дождаться появления элемента на странице, после чего произвести над ним необходимое действие.

    Но возьмите любой современный сложный сайт: соцсеть, буксу, доску объявлений, развлекательную платформу. Практически везде выпадающие списки - это набор дивов, не имеющий ничего общего со стандартной конструкцией select-option. Чекбоксы (input:radio) - скрыты и не отображаются на странице, а за их визуальное представление отвечают всё те же сложные структуры из дивов и спанов. Не говоря о том что есть такие элементы, как слайдеры (ползунки) или поля для быстрого поиска, при вводе в которых первых букв появляются предлагаемые варианты, по одному из которых необходимо кликнуть.

    Да, работать с элементами на современных сайтах непросто. Но вот в чём соль: реализация однотипных элементов в рамках одного сайта - одинакова! А это значит, что научившись работать с одним слайдером, скажем, на авито, встретив затем слайдер на другой странице этого же сайта - вы с ним уже справитесь легко. Но вам по прежнему придётся копировать 10-20-50-100500 строк разработанного ранее кода в каждое место, где вы работаете с таким слайдером.

    Что в данной ситуации делает для вас библиотека SibboraHelper 2.0? Она берёт на себя базовую логику работы со следующими типами элементов:
    + Поле для ввода;
    + Кнопка;
    + Чекбокс;
    + Группа радиобаттонов;
    + Выпадающий список;
    + Поле для ввода с отображением результатов поиска;
    + Слайдер (ползунок).
    В базовую логику входит ожидание появления элемента на странице и установка его значения, а также сбор логов и фиксация вспомогательных параметров (об этом позже). Однако вы можете не только использовать уже заложенный в методах функционал, но и адаптировать его под конкретный сайт. Для этого вам нужно создать небольшой фрагмент кода, решающий три задачи:
    - Определение текущего значения элемента данного типа;
    - Определение видимости/невидимости этого элемента;
    - Определение заблокированности элемента/его доступности для взаимодействия.
    Создав этот фрагмент, вы подключаете его к библиотеке, и с этого момента библиотека умеет проверять необходимость действия до его совершения и успешность после его завершения исходя из структуры именно того сайта, с которым вы работаете.

    В чём заключается мощь такого подхода? Для примера, для подачи объявления и для его редактирования на авито мной используется один и тот же код. Код просто не взаимодействует с элементами, состояние которых ему не нужно менять, плюс исключается ситуация, когда код выполнился, а одно из действий на странице почему-то не отразилось.

    2. Выполнение одного и того же кода как с эмуляцией, так и без неё.


    Эмуляция мыши и клавиатуры повышает "человекоподобность" поведения вашего бота, но при этом сильно замедляет его выполнение. При этом создание кода, использующего обычный метод (Click), и реализующего полную эмуляцию (FullEmulationMouseMoveToHtmlElement, FullEmulationMouseClick), строится совершенно по разному.

    Библиотека SibboraHelper 2.0 позволяет написать код, в котором каждому действию на сайте будет соответствовать всего одна строка, а затем, изменяя всего одно настроечное свойство, выполнять данные действия как с полной эмуляцией мыши и клавиатуры, так и без таковых. Таким образом вы сможете включать полную эмуляцию в случае, если сервис начнёт массово блокировать аккаунты. И вам для этого не придётся переписывать код, нужно будет лишь изменить единственный параметр в настройках.

    3. Быстрые проверки состояния страницы

    Помимо действий над элементами страницы, не менее важным является правильное выстраивание ожидания необходимого состояния страницы. Что умеет делать библиотека в этом направлении? Она может ожидать:
    + Наличия/отсутствия на странице отдельного элемента;
    + Наличия/отсутствия на странице необходимого количества элементов;
    + Наличия/отсутствия на странице элементов, атрибуты которых соответствуют заданным параметрам;
    + Наличия на странице элементов, стилевое оформление которых отвечает заданным требованиям.
    Благодаря этому в вашем коде будет меньше циклов, запутывающих его структуру.

    4. Использование предыдущих результатов в последующих операциях

    Этот пункт вытекает из предыдущего. Допустим, мы дождались загрузки на странице количества фотографий, большего чем 10. Но сколько точно картинок загрузилось? 11? 150? Точное количество вы сможете получить как результат предыдущей операции, и кроме этого, все эти картинки уже будут заботливо собраны для вас в объект класса HtmlElementCollection для последующего перебора.

    5. Несколько вариантов действий при неудаче

    Отсутствие элемента на странице или неудача при установке его значения могут быть как поводом для прерывания выполнения проекта, так и всего лишь признаком того что код должен пойти по другой ветке. SibboraHelper 2.0 поддерживает переключение реакции методов на ошибку с выброса исключений на молчаливую фиксацию всего одним параметром.

    6. Подробная информация для анализа ошибок

    Что делает разработчик, отлаживая свой код? Зачастую пичкает его строками, выводящими информационные сообщения в лог. Но это слабо помогает, если ошибки возникают, например, каждое 10 выполнение проекта. Библиотека же собирает следующую информацию:
    + Базовая информация о результатах вызова каждого метода библиотеки с момента запуска проекта;
    + Скриншоты страницы до и после каждого действия с настраиваемой глубиной хранения;
    + Полные исходные коды страницы для каждого шага, также с настраиваемой глубиной хранения.
    Всё это позволяет производить подробных анализ даже эпизодических ошибок, возникающих как у вас так и у покупателей ваших ботов.

    Всё перечисленное выше позволяет очень быстро создавать проекты, которые затем очень легко сопровождать и развивать.

    Что входит в состав продукта:
    1) dll-библиотека, xml-файл со всплывающими подсказками;
    2) документация в формате pdf;
    3) видео с разбором всех методов;
    4) демо-проект.

    Кроме этого, покупатели получат следующие бонусы (из состава материала "ZennoPro Academy"):
    1) Подкурс по XPath;
    2) Материалы по основам языка программирования C#.
    Первый бонус поможет разобраться с поиском целевых элементов на странице а второй - создать базу для тех, кто по разным причинам раньше избегал создания проектов на языке C#.

    Порядок проведения складчины:

    Проверяющие найдены, продукт будет выдан на проверку 7 февраля (в среду). Также к среде дополню данный текст примерами со скриншотами. Дальше, если с проверкой уложимся быстро, сбор ориентировочно на 15-20 февраля.

    Важные моменты:
    1. По минимальному уровню участников. Слоган "проекты на C# так же просто, как на кубиках" говорит о том что благодаря библиотеке вы сможете одной строкой кода задать очень сложную логику (здесь прямая аналогия с визуальным экшеном постера, который благодаря множеству возможных настроек может быть очень удобным универсальным средством по работе со страницей). Несмотря на то что в составе материала есть в том числе и бонус в виде раздела по основам C# из Академии - он больше предназначен для того чтобы участники могли освежить свои знания по написанию проектов на C#, но не осваивать их с нуля. Если вы ранее не создали ни одного проекта на C# - данный продукт пока не для вас.
    2. По поддержке. В теме поддержки буду отвечать на вопросы по работе с библиотекой. Если не хватает базовых знаний - буду подсказывать где их получить, не более того;
    3. По обновлениям. Участники будут получать версии с исправленными ошибками (если таковые будут найдены). Версии с кардинально улучшенным функционалом будут доступны покупателям предыдущих версий со скидкой, однако о бессрочных обновлениях за такую цену речи не идёт (всё же основная задача библиотеки - быть хорошим инструментом в ваших руках и помощником в деле зарабатывания денег).

    Информация для тех кто участвовал в АкадемииСамое главное: для участников Академии первая коммерческая версия библиотеки будет на треть (на тысячу рублей) дешевле: 2500 рублей вместо 3500.

    Дальше - в виде вопросов и ответов:
    1) Чем первая версия второй ветки отличается от последней версии первой ветки, доступной в рамках академии?
    - Основное: с использованием второй версии код получается намного более лаконичным, плюс механизма адаптации под конкретные сайты, методов по работе с чекбоксами и радиобатонами в первой версии не было. Больше вы сможете прочесть 07.02, когда будет обновлена шапка.
    2) Почему продукт данной складчины не выдан в виде обновления в Академии?
    - Только начиная Академию, я сразу писал что библиотека со временем превратится в отдельный коммерческий продукт. Последние несколько месяцев я работал над одним крупным проектом, который позволил переосмыслить концепцию и кардинально улучшить библиотеку. Во вторую версию вложено огромное количество сил, достаточное, чтобы сделать её отдельным продуктом.
     

    Загрузка...
  2. Отличный сервис, рекомендуем :)
    ТС использует в работе обширный инструментарий для продвижения,
    который априори существенно дороже предоставляемых услуг.

    Пользуйтесь, пока доступно!
     

  • Кто мы?

    2 разработчика которые решили помочь другим разработчикам в решении их проблем, а так же пользователям с поиском самых свежих и качественных инфопродуктов. За 4 с небольшим месяца мы создали этот форум на который заходят ежедневно 1500 человек и посещаемость постоянно растёт. Мы создали панель лицензирования для защиты PHP скриптов от воровства и SEO панель для мониторинга наших сайтов и выбора верной стратегии их развития. Мы надеемся что то что мы создали пригодится Вам и возможно Вы поможете нам развиваться и совершенствоваться вместе с Вами.
  • Приложения

  • Набираем команду!

    Мы набираем в нашу команду умных и амбициозных людей! Не важно в какой сфере Вы преуспели, Вы можете попасть в нашу команду и развивать с нами действительно достойный ресурс.

    Вступай!