[php script] A-BOT DETECT - тема закрывается, записывайтесь в новую

Тема в разделе "Бизнес и свое дело", создана пользователем analytic, 30 янв 2018.

Статус обсуждения:
Комментирование ограничено.
  1. 31 янв 2018
    #21
    analytic
    analytic ОргОрганизатор (А)
    Отличные вопросы.

    1. Вопрос цены за конечный продукт открытый. Также как и открыт вопрос = хотите скрипт за безлимит или готовы платить абонентскую плату. Если готовы то сколько = как за первое так и за второе. Я готов к получению обратной связи.
    :)

    Сторонних сервисов -нет. Так как задействована собственная система переменных и баз. Что значит собственная система баз. Ну помимо обычных баз геолокаций -> используются также базы юзерагентов, база кодов языка в браузере (сопоставления страны и языка в браузере), базы временных зон (в зависимости от страны) . Т.е. всё то что я использую для анонимизации в своих шаблонах Zennoposter (обращение к базе через API). (как я уже говорил = наработки были раньше)

    Т.е. вопрос полной независимости от разработчика - подразумевает полную передачу всего это. Но он тоже может быть рассмотрен - если будет обратная связь.




    2. Будет скин обработки аналитической информации в основном сайте, создание сниппетов - происходит в ручную.

    3. Отличный вопрос. Значит ситуация такая. Как я сказал есть сайт-база. Есть остальные сайты. Так вот остальные сайты собирают информацию и передают на главный сайт. Элемент уникальной информации = это считывания логов и получение IP DNS пользователя.

    Главная сложность -которая стояла перед мной - это получения всех указанных в стартовом посте параметров "на лету". Тут гугл как правило не помогает=) Было два пути делать сбор информации через https , но я нашёл способ сделать через http.

    Т.е. в скрипте мы рассматриваем сбор двух видов информации, условно я назвал
    -полная картина событий (пасем всех у кого включен javascript по всем параметрам)
    -неполная картина событий (пасем ботов, которые не определяются если выключен javascript)

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

    Если нужен не только сбор информации , но и действие с пользователем. То происходит следующий порядок вещей.

    1) Пользователь приходит на страницу site.ru/start.php
    2) Страница site.ru/start.php собирает о нём всю информацию и передает в базу.
    3) Страница site.ru/start.php делает редирект на Страницу site.ru/do.php
    4) На странице site.ru/do.php имеем о пользователе весь массив данных (все указанные выше параметры) до формирования страницы отображения
    5) На основе указанных параметров делаем условия = как собрать динамический контент для пользователя или на основе параметров перенаправить пользователя на другую целевую страницу/партнерку и т.п.

    В процессе работы п.4. и п.5. можем передавать данные в базу сайта, сколько раз были опреденные редиректы, сколько раз был показан баннер/тектовой блок. Т.е. мы указываем id = какой надо передать. В базе всё фиксируется.

    4. Нет. Работа идёт с кодом PHP. Пример
    PHP:
    <?php
    if  ($check['countryCode']  =='RU')
    {
    echo "<script language='JavaScript'>window.location.href = 'http://www.myshop.ru/skidki'</script>";
    }
    elseif  ($check['countryCode']  =='FI')
    {
    echo "<script language='JavaScript'>window.location.href = 'http://www.myshop.com/russian-vodka'</script>";
    }
    else
    {
    echo "<script language='JavaScript'>window.location.href = 'http://www.landingpage.com/'</script>";
    }
    
    
    ?>
    
    
    
    .
    Редиректы

    Код:
    Редирект на основе jQuery    echo "<script type='text/javascript'>$(location).attr('href','http://example.com');</script>";
    
    Редирект на основе HTML      echo "<meta http-equiv='refresh' content='0;http://example.com'>";
    
    
    Редирект на основе Javascript      echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
    

    Таблицы кодов стран/ботов/браузеров и т.п будут в инструкции
     
    Последнее редактирование модератором: 31 янв 2018
    2 пользователям это понравилось.
  2. 31 янв 2018
    #22
    analytic
    analytic ОргОрганизатор (А)
    Свой скрипт = разрабатывал для более узкого направления - определения бот-трафика , его учёт и привязка полученных данных к кампаниям.

    Я конечно понимаю, что в клубе больше тех, кто обучается, чем тех кто работает с трафиком. Поэтому приходится приводить примеры .


    Есть такие замечательные инструменты



    Что они дают - возможность встраивания в метки нужной информации.

    Это можно рассматривать в двух направлениях.
    1) Учёт выгодных и невыгодных рекламных кампаний. По факту наличия бот-трафика. А его хватает в РСЯ. (Правда в курсах по контекстной рекламе я этого не встречал....там обычно вода.)
    2) Увеличение конверсии. = т.е. на базе {keyword} (Ключевая фраза, по которой было показано объявление (текстово-графическое или реклама мобильных приложений)) - формируется контент

    3) Параллельно собирается статистика параметра REFERRAL. И мы можем делать блэк/вайт листы. Или выходить на прямое размещение рекламы у вебмастера.
     
    2 пользователям это понравилось.
  3. 31 янв 2018
    #23
    analytic
    analytic ОргОрганизатор (А)
    Конечно - чтобы работать с инструментом - необходимо знать верстку и общую логику работы языка PHP (только для формирования условий)

    Основным преимуществом считаю гибкость в работе с инструментом. А богатство языка PHP позволяет упрощать жизнь. Далее на примере условий для IP (тут может быть любой из параметров) приведу ряд сниппетов для создания условий

    PHP:
    *****Создание индивидуального условия*****
    
    <?php
      if ($check['ip'] == '109.252.1.2 ')
      {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
      }
    
    ?>
    
    *****Создание коллективного условия*****
    <?php
    $ip_begin=ip2long('77.5.128.0');
    $ip_end=ip2long('77.5.128.255');
    $ip_real=ip2long($check['ip']);
    
    if($ip_real>=$ip_begin&&$ip_real<=$ip_end)
    
    {
    echo "Для пользователей сети 'Northnet' мы предлагаем конкурс";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/afisha.php'</script>";
    }
    
    ?>

    PHP:
    3 примера кода для работы со списком
    
    
    Пример № 1
    <?php
      if ($check['ip'] == '109.252.1.1 ')
      {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
      }
      if ($check['ip'] == '109.252.1.2 ')
      {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
      }
      if ($check['ip'] == '109.252.1.3 ')
      {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
      }
      if ($check['ip'] == '109.252.1.4 ')
      {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
      }
      if ($check['ip'] == '109.252.1.5')
      {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
      }
    ?>
    
    
    Пример № 2
    
    <?php
    if (($check['ip'] == '109.252.1.1')||($check['ip'] == '109.252.1.2')||($check['ip'] == '109.252.1.3')||($check['ip'] == '109.252.1.4')||($check['ip'] == '109.252.1.5'))
    {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
    }
    ?>
    
    
    Пример № 3
    
    <?php
    
    switch ($check['ip'])
    {
    case '109.252.1.1'  :
    {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
    break;
    }
    
    case '109.252.1.2'  :
    {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
    break;
    }
    
    case '109.252.1.3'  :
    {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
    break;
    }
    
    case '109.252.1.4'  :
    {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'</script>";
    break;
    }
    
    case '109.252.1.5'  :
    {
    echo " Вы не закончили оформление заказа в нашем интернет -магазине";
    echo "<script language='JavaScript'>window.location.href = 'http://www.shop.ru/cart.php'";
    break;
    }
    }
    
    ?>
    
    
    
    Выше указанные условия можно сформировать c помощью программ автоматизации , которые могут записывать информацию в файл. (Например, с помощью программы Zennoposter).





    Более сложная реализация
    PHP:
    *****Пример работы с файлом txt*****
    
    // Файл ip-list.txt имеет следующий вид
    
    
    109.252.1.1
    109.252.1.2
    109.252.1.3
    109.252.1.4
    109.252.1.5
    
    
    // php файл для работы с файлом ip-list.txt
    <?php
    
    $file_handle = fopen("ip-list.txt", "r");
    while (!feof($file_handle)) {
       $ip_txt = fgets($file_handle);
       if ($check['ip']==$ip_txt)
        
           {
               echo "Месяц назад вы купили/интересовались книгой про 'Инвестиции'. Через 5 секунд вы будете перенаправлены на курс 'Инвестируй с умом'";
               echo "<meta http-equiv='refresh' content='5;http://mysite.ru/best.php'>";
            
            
           }
    
       }
    fclose($file_handle);
    
    
    
    ?>
    
    
    *****Пример работы с базой  mysql. *****
    
    Итак -есть база данных с необходимой информацией (положим маркетолог, аналитик или менеджер интернет-магазина вёл статистику и импортировал exel таблицы в mysql.
    Положим база с именем 'clients' имела следующие таблицы 'user1' (те кто купил много), 'user2' (те кто нечего не купил) и т.п.)
    Стоит задача - предложить первым (те кто покупают) - купить ещё;
    
    // Примерный упрощенный код базы clients.sql
    
    -- phpMyAdmin SQL Dump
    -- version 4.7.3
    -- https://www.phpmyadmin.net/
    --
    -- Хост: 127.0.0.1:3306
    -- Время создания: Янв 15 2018 г., 14:18
    -- Версия сервера: 5.6.37
    -- Версия PHP: 7.1.7
    
    SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
    SET AUTOCOMMIT = 0;
    START TRANSACTION;
    SET time_zone = "+00:00";
    
    
    /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
    /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
    /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
    /*!40101 SET NAMES utf8mb4 */;
    
    --
    -- База данных: `clients`
    --
    
    -- --------------------------------------------------------
    
    --
    -- Структура таблицы `user1`
    --
    
    CREATE TABLE `user1` (
      `id` int(11) NOT NULL,
      `ip` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
      `info` varchar(255) COLLATE utf8_unicode_ci NOT NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    
    --
    -- Дамп данных таблицы `user1`
    --
    
    INSERT INTO `user1` (`id`, `ip`, `info`) VALUES
    (1, '109.252.1.1', 'Купил товар № 1'),
    (2, '109.252.1.2', 'Купил товар № 2'),
    (3, '109.252.1.3', 'Купил товар № 3'),
    (4, '109.252.1.4', 'Купил товар № 4');
    
    --
    -- Индексы сохранённых таблиц
    --
    
    --
    -- Индексы таблицы `user1`
    --
    ALTER TABLE `user1`
      ADD PRIMARY KEY (`id`);
    
    --
    -- AUTO_INCREMENT для сохранённых таблиц
    --
    
    --
    -- AUTO_INCREMENT для таблицы `user1`
    --
    ALTER TABLE `user1`
      MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;COMMIT;
    
    /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
    /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
    /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
    
    
    
    <?php
    $link = mysqli_connect("127.0.0.1", "root", "", "clients");
    
    if (!$link) {
        echo "Ошибка: Невозможно установить соединение с MySQL." . PHP_EOL;
        echo "Код ошибки errno: " . mysqli_connect_errno() . PHP_EOL;
        echo "Текст ошибки error: " . mysqli_connect_error() . PHP_EOL;
        exit;
    }
    
    
    $sql = "SELECT *
            FROM   user1
            WHERE  ip =".$check['ip'];
    
        $result = $link->query($sql);
        $row = $result->fetch_assoc();
     
        if ($row)
        
            {
               echo "Спасибо за лояльность.Через 5 секунд Вам будет предложен товар года";
               echo "<meta http-equiv='refresh' content='5;http://mysite.ru/best.php'>";
            }
    
    
    
    mysqli_close($link);
    ?>
    
    
    
    
    
    *****Пример работы с базой sqlite*****
    
    <?php
    
    $db = new SQLite3('clients.db');
    
    
    $results = $db->query('SELECT * FROM user1 WHERE ip='.$check['ip']);
    $row = $results->fetchArray();
    
    if ($row)
    
            {
               echo "Спасибо за лояльность.Через 5 секунд Вам будет предложен товар года";
               echo "<meta http-equiv='refresh' content='5;http://mysite.ru/best.php'>";
            }
    
    
    $db->close();
    
    
    ?>
    
    
    
    
    ***** Пример работы с базой mongodb *****
    
    
    У нас есть база mongodb с именем "clients" и с коллекцией "users1"
    
    Общий вид базы коллекции "user1" следующий
    
    {
        "_id" : ObjectId("5a5caa91f733c2143014a649"),
        "id" : 1,
        "info" : "Купил товар № 1",
        "ip" : "109.252.1.1"
    },
    {
        "_id" : ObjectId("5a5caa91f733c2143014a64a"),
        "id" : 2,
        "info" : "Купил товар № 2",
        "ip" : "109.252.1.2"
    },
    {
        "_id" : ObjectId("5a5caa91f733c2143014a64b"),
        "id" : 3,
        "info" : "Купил товар № 3",
        "ip" : "109.252.1.3"
    },
    {
        "_id" : ObjectId("5a5caa91f733c2143014a64c"),
        "id" : 4,
        "info" : "Купил товар № 4",
        "ip" : "109.252.1.4"
    },
    {
        "_id" : ObjectId("5a5caa91f733c2143014a64d"),
        "id" : 5,
        "info" : "Купил товар № 5",
        "ip" : "109.252.1.5"
    },
    
    
    
    Исполняемый файл будет следующим
    
    <?php
    
    
    
    $manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
    
    
    $filter = ['ip' => '109.252.1.1'];
    $options = [];
    
    $query = new MongoDB\Driver\Query($filter, $options);
    $cursor = $manager->executeQuery('clients.user1', $query);
    
    foreach ($cursor as $row) {
     
        if ($row)
        {
               echo "Спасибо за лояльность.Через 5 секунд Вам будет предложен товар года";
               echo "<meta http-equiv='refresh' content='5;http://mysite.ru/best.php'>";
        }
     
    }
    
    
    
    
    ?>
    
    
    
    
    
    ***** Пример работы с API *****
    
    Работа через API – подразумевает тот факт, что нами уже создана (или используется готовая) инфраструктура , работающая по принципу «запрос-ответ»
    
    Давайте смоделируем запрос:
    http://api.net/api/djkshdfjsdhfks/loyalty/109.252.1.1
    Что здесь:
    Запрос к API функциям
    “djkshdfjsdhfks”  - какой-то внутренний ключ , позволяющий получать данные
    loyalty — название метода API к которому обращаемся
    109.252.1.1  - IP пользователя — по которому хотим получить данные
    
    Можем получить ответ вида
    {
    
        "value" : 111,
     
    },
    
    или вида
    
    
    {
    
        "p1" : 111,
        "p2" : 165900,
        "p3" : “woman”
    },
    
    На основе полученных значений сформировать условие . Как вы понимаете — значений может быть и одно и несколько. Каждый параметр может быть осмысленным и задокументированным.
    
    Примерный код исполняемого файла будет выглядеть следующим образом:
    
    <?php
    $api_url = 'http://api.net/api/djkshdfjsdhfks/loyalty/'.$check['ip'];
    if( $curl = curl_init() ) {
        curl_setopt($curl,CURLOPT_URL,$api_url);
        curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
        $out = curl_exec($curl);
        curl_close($curl);
      }
      $t = array ();
      $t = json_decode($out,true);
     if ($t['value']>100)
    
    {
               echo "Спасибо за лояльность.Через 5 секунд Вам будет предложен товар года";
               echo "<meta http-equiv='refresh' content='5;http://mysite.ru/best.php'>";
    }
    
    ?>
    
    
    
    


    На практике работа с конкретными значениями IP пользователей - ведётся в том случае, когда идёт работа с постоянной базой клиентов (обычно e-mail marketing). И не смотря на наличие Cookie — по прежнему многие интрнет-рекламные сети — показывают рекламу на основе нашего IP.

    В остальных случаях IP пользователя — служит для необходимым этапом для получения другой более детальной информации и пользователи (Страна, Регион, Город, Широта, Долгота, Интернет-провайдер и т.п.)

    Скорость обработки условий будет зависит от двух факторов:
    1) Технические данные VPS — где происходит обработка исполняемых файлов.
    2) Оптимизационный подход к кодостроению.


    Работать с чистым кодом PHP — приемлемо для количества IP до 50 шт. Можно работать и с гораздо большим количеством IP – при условии, что вы способны создавать код с помощью каких-либо средств автоматизации. Т.е. код создается быстро и содержит все необходимые условия . Однако в данном случае следует учитывать размер файла — чем больше размер, тем дольше он обрабатывается.
    Но в тоже время допустимо работать с файлами до 5 Мб.

    Работа со списком — приемлема до 500 IP.

    Работать с базами данных sqlite, mysql, mongodb — более приоритетней. Так как, во первых, подразумевается, что уже есть готовая инфраструктура , позволяющая сохранять необходимую аналитическую информацию (как за счёт специализированных аналитических систем, так и за счёт импорта уже обработанной аналитической информации в базу данных ), а во-вторых, скорость обработки результатов — значительно выше за счёт индексации тех полей — по которым идёт выборка данных.
    Также необходимо учитывать особенности нагрузки на сервер — в зависимости от размера базы данных. Поэтому приемлемо работать:
    sqlite<50 Мб
    50< mysql< 1000 Мб
    mongodb>1000 Мб.


    Тут у разработчиков всегда есть выбор — улучшения технических характеристик рабочего VPS или концентрация на NoSQL базах данных.


    Работа с API – одна из сложных задач, но в то же время -позволяющая получать разнообразные и комбинированные данные — в зависимости от аналитических задач.
     
    Последнее редактирование модератором: 31 янв 2018
    1 человеку нравится это.
  4. 31 янв 2018
    #24
    Мнемоник
    Мнемоник ПартнерПартнер (А)
    ИМХО.

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

    Не каждый сможет полноценно править под свои нужды скрипт. Тем самым увеличивая его конечную стоимость за счет привлечения кодеров со стороны.
    Отсюда вытекает следствие того, что цену я бы сделал ниже. По крайней мере на первый поток для обкатки и траста.
    Ты писал про стоимость выше. Поэтому не сочти за наглость....
     
  5. 31 янв 2018
    #25
    Виктор МСК
    Виктор МСК ДолжникДолжник
    На всякий случай ставлю в подпись
     
    1 человеку нравится это.
  6. 31 янв 2018
    #26
    analytic
    analytic ОргОрганизатор (А)
    Код PHP достаточно знать на уровне условий. Не более того.
    п.с. хотя согласен - можно создать и генератор кода. Из серии скопировал-вставил
     
    3 пользователям это понравилось.
  7. 31 янв 2018
    #27
    pasha458
    pasha458 ЧКЧлен клуба
    В подпись поставил

     
    1 человеку нравится это.
  8. 31 янв 2018
    #28
    analytic
    analytic ОргОрганизатор (А)
    Во второй пост добавил обзор системы (интерфейс поиска)
     
  9. 31 янв 2018
    #29
    analytic
    analytic ОргОрганизатор (А)
    Да какая наглость?=) Я просто оцениваю своё время....также как и ты...только мы разные вещи предлагаем и для разного уровня пользователей. А цена у нас почти одинаковая:D

    Смотри в чём отличие- для меня важно время. Если тема себя не окупает - я могу сделать понижение в цене. Но не факт , что тема снова себя окупит. Так как оцениваю доход в IT часах. При этом я нечего не теряю - так как инструмент разрабатываю для себя. Ну не будет у меня авторской - будет другая работа.

    Задача же инфобизнеса - в красивом копирайтинге и хайпе в авторском разделе. Инфобизнес оценивает доход в трендовоности и шуме вокруг темы. Но у Вас есть плюс = клиентов больше с нулевым уровнем.;)
     
    1 человеку нравится это.
  10. 31 янв 2018
    #30
    Мнемоник
    Мнемоник ПартнерПартнер (А)
    Мне нравится ход твоих мыслей !) Серьёзно...

    Но в одном ты всё же не прав ! У твоего продукта есть огромный как говорится.... скрытый потенЦевал !)) аха
    Если серьёзно тема очень крутая и главное убер нужная ! У тебя все шансы запулить ее и сделать реальным конкурентом по сути намба ван.. Кейтаро.

    И ты сам сужаешь на самом деле очень ( !) большое... нет, не так..... пц какое большое поле в виде вечно ищущих корма арбитров и вебов.
    Вообщем понижай сумму и лови волну хайпа на первых 2 потоках. Потом твой тдс начнут покупать и по 5 000 р.

    А сейчас просто даже для меня использующего Кейтаро.... тяжко переломить в себе сопротивление и перейти на твой продукт.
    Хотя я здраво понимаю, что он ох...й !) Но есть как говорится всегда... НО !

    З.Ы. ты же не используешь психо-гипно-телекинез копирайтера))) ахаха
     
    1 человеку нравится это.
  11. 31 янв 2018
    #31
    analytic
    analytic ОргОрганизатор (А)
    А не надо себя переламывать. Хочется распределять трафик за 25 баксов в месяц - дело хозяйское. Конверсия с тизерок/баннеров/сайтов - ого какая=) Сколько нулей впереди?=)


    Мой продукт - для тех кто серьезно хочет анализировать источники трафика - на предмет бот-трафика. Т.е. по сути для абсолютно другого рынка (кто хочет экономить на рекламном бюджете....а слив бюджет - делать выводы, либо его восстанавливать.)
     
    2 пользователям это понравилось.
  12. 31 янв 2018
    #32
    Info00
    Info00 ОргОрганизатор (П)
    а что является основанием (доказательной базой) для возврата слитого бюджета?
    используя твой продукт можно оспаривать или им надо что-то официальное?

     
    2 пользователям это понравилось.
  13. 31 янв 2018
    #33
    analytic
    analytic ОргОрганизатор (А)
    Доказываешь что с площадки -x - ,был бот-трафик и ты слил условно y-денег. Проводят проверку и восстанавливают бюджет.

    Информацию конечно стоит прикладывать.

    Когда битва за клиента стала принимать большие объемы (когда умышленно сливают рекламный бюджет конкурента) - 4 года назад яндекс принял следующую позицию - чтобы не разбираться и не терять свои доходы. Многие стали умнее относится к своему бюджету.

    Аналогично и гугл аналитикой.

    Так как я работаю с контекстной рекламой - естественно мне была и будет интересна независимая вебаналитика.

    Через недельку-другую - покажу ещё одну свою систему независимой аналитики - акцент которой сделать на электронной коммерции. Также особая система защиты от ботов и много других фишек.
     
    Последнее редактирование модератором: 31 янв 2018
    3 пользователям это понравилось.
  14. 31 янв 2018
    #34
    bronshic
    bronshic ШтрафникШтрафник
    Эх был бы кейс типа идешь в такую-то трафсеть(тизерку или типа того), прикручиваешь там эту чудо тдс и бот траф автоматом возращается назад без разговоров и доказательств:rolleyes: и льешь почти всегда на что угодно в плюс:D . В принципе там у них можно стремный траф запрещать в настройках(ограничено), но во первых цена повышается, а во вторых не особо помогает, на их то стороне;)
     
  15. 31 янв 2018
    #35
    RoyalBank
    RoyalBank ОргОрганизатор (А)
    Такой вопрос, есть ли какая-то страница, на которой выводятся отчеты, графики, в общем, вся статистика в упорядоченном виде. Чтобы можно было понять общую картину и уже после этого, пользоваться фильтром, детально изучая какое-то конкретное направление.

    Еще вопрос, рассматривая твой инструмент, применимо к мой ситуации. Хочу рассмотреть твою систему, как дополнительную защиту от ботов, в случае, если первая TDS, по какой-то причине его пропустит.

    Так вот, могу ли я использовать ее вкупе, как второй эшелон защиты. Т.е. логика следующая, сначала все отправляется в мою tds, от туда отсеивается, либо пропускается дальше на страницу, так вот, всех кого пропускаем, можно ли повторно проверить с помощью твоей системы и уже отсеянных с помощью нее, пропустить дальше. Пока интересует только отлов ботов, т.к. РК не занимаюсь.
     
  16. 31 янв 2018
    #36
    brodyaga555
    brodyaga555 ЧКЧлен клуба
    да уже придудонился, осилю ли я такой умный и технологичный продукт, а то получится в итоге как обезьяна с мобилой)) ... всё круто и нравится, особенно когда играет светится, но максимум орехи колоть буду им :D
    Но тема супер!!! Только к ней хороший мануал-учебник нужен)))

    На всякий случай - В ПОДПИСИ
     
    1 человеку нравится это.
  17. 31 янв 2018
    #37
    Мнемоник
    Мнемоник ПартнерПартнер (А)
    Сорри, не автор...
    Но просто у тебя интересный вопрос.
    Ты можешь реально просесть по времени прогрузки.
    Проще внести список ip ботов в тдс и отсылать их на траст ресурс.
    Чем пытаться пропустить весь траф через несколько тдс.
    Представь что у тебя 10к/ дейли и всю эту толпу ты пропускаешь через 2 системы.
    ИМХО.
     
  18. 31 янв 2018
    #38
    Мнемоник
    Мнемоник ПартнерПартнер (А)
    Мне не хочется))

     

    Вложения:

  19. 31 янв 2018
    #39
    RoyalBank
    RoyalBank ОргОрганизатор (А)
    Задержка однозначно может быть, как минимум из-за дополнительного запроса к серверам с базой IP, а дальше уже зависит от скорости работы скрипта и мощности сервера.
     
  20. 31 янв 2018
    #40
    analytic
    analytic ОргОрганизатор (А)
    Не вижу проблем. Отправляешь на анализируемый домен.....принцип которого я рассказывал

    1) Пользователь приходит на страницу site.ru/start.php
    2) Страница site.ru/start.php собирает о нём всю информацию и передает в базу.
    3) Страница site.ru/start.php делает редирект на Страницу site.ru/do.php
    4) На странице site.ru/do.php имеем о пользователе весь массив данных (все указанные выше параметры) до формирования страницы отображения
    5) Формируешь условия по каким параметрам и куда отправлять и отправляешь


    Обожаю общаться с инфобизнесменами- арбитражниками....честно, ты добавляешь калорит в складчину:)

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

    Да в буржунете есть такое понятие как fraud базы - это когда обращаются к базе "подозрительный IP" (дорогой серрвис). Но это весомая база и точно не для "рядового VPS и Mysql". (у меня такая есть - в другом проекте - vitalquality analytics)

    Добавить сетки - можно для поисковых систем и то не для всех.

    Редко но бывает задача - например пройти модерацию "серой" рекламной кампании. Отлавливать IP - глупо. Проще отлавливать fingerprint модератора, чтобы ему отображать другое.

    Есть целые бот системы (видел на Python и Node.js - себестоимость их в 100 раз ниже чем на знакомом многим Zennoposter) - у которых две задачи - парсить прокси и имитировать локально значимый трафик (т.е. для каждой кампании свой трафик) - для обычный метрик типа - Яндекс Метрика, Гугл Аналитика и любая tds - это будет живой трафик.

    Бот-трафик определяется как раз несоответствием параметров, которые не учёл ботовод.

    По поводу задержки картина примерно такая:
    Пользователь попадает на анализируемый домен
    1. Через ajax считывается лог файл (получение IP DNS)- где-то 0,2с (после 100 000 пользователей данный файл надо удалять - иначе время задержки будет рости)
    2. Считывания javascript параметров....особенно долго fingerprint - где-то 0,4 с.
    3. Считывания информации по API - где-то 0,2 с (базы проиндексированы,сервер мощный. API работает быстро)
     
    Последнее редактирование модератором: 31 янв 2018
    3 пользователям это понравилось.
Статус обсуждения:
Комментирование ограничено.