Уведомление после завершения

Discussion in 'Решение различных задач по парсингу' started by dexperanto, Jul 28, 2018.

  1. dexperanto

    dexperanto New Member Пользователи

    Joined:
    Nov 21, 2014
    Messages:
    123
    Добрый день.
    парсер мониторит каждую минуту один сайт, и при появлении новых ссылок сливает сразу таблицу в папку.
    Есть у кого-нибудь скрипт какой-нибудь, чтобы после завершения выполнялся... типа отправка письма на почту, в скайп, в телеграмм и прочее) Уведомление о том ,что появилась новая таблица.
     
  2. Dandrei

    Dandrei Member Пользователи

    Joined:
    Nov 4, 2017
    Messages:
    41
    Ребят, тоже требуется. Может у кого есть подобное решение?
     
  3. Djahat

    Djahat Well-Known Member Пользователи

    Joined:
    Jan 14, 2013
    Messages:
    543
    Город:
    Мордор
    Меню Cntrl+u

    Там все варианты которые я знаю.
    Либо запустить приложение windows с параметрами запуска - которое сделает то что нужно, или то на что приложение способно.

    Либо выполнить PHP скрипт - которы сделает то что нужно, что в нем написано.

    Я для такого использую просто PHP скрипт, который мне на почту шлет письмо.
     
    Dandrei and Kreol like this.
  4. Dandrei

    Dandrei Member Пользователи

    Joined:
    Nov 4, 2017
    Messages:
    41
    Djahat, спасибо! Я тоже хочу скрипт подключить. Сам скрипт, как я понимаю что-то в этом роде:

    <?php
    mail($_GET['email'], 'Title', 'text');
    ?>


    Но где брать данные для авторизации и как научить скрипт делать вложение в виде csv-файла?
     
  5. Djahat

    Djahat Well-Known Member Пользователи

    Joined:
    Jan 14, 2013
    Messages:
    543
    Город:
    Мордор
    Про данные для авторизации не понял, куда авторизоваться.

    Файл, полученный при парсинге, можно загрузить на FTP , в том же меню CNTRL+U

    А далее можно пойти двумя путями - либо в письмо себе прислать ссылку на скачку файла, чтобы не засорять почту, либо скрипту отправляющему письмо, указать как вложение этот файл на серваке, который туда загружен по FTP
     
  6. Dandrei

    Dandrei Member Пользователи

    Joined:
    Nov 4, 2017
    Messages:
    41
    Да, про загрузку на FTP как-то сразу и не подумал, спасибо!

    А авторизация - я о том, что куда вводить логин и пароль почты. Они в sendmail прописываются?
     
  7. Djahat

    Djahat Well-Known Member Пользователи

    Joined:
    Jan 14, 2013
    Messages:
    543
    Город:
    Мордор
    Ну я воббще использую phpmail, самое элементарное, никаких авторизаций не надо- сервак отправит почту сам (от себя как бы) - и она удачно упадет в спам в Ваш ящик, а оттуда Вы фильтром в своем почтовом клиенте, перетащите во входящие.

    Но есть более продвинутые почтовые функции на PHP , через авторизацию SMTP

    Но это надо поковыряться чтобы и сервак был настроен и скрипт правильно отрабатывал.
     
  8. Dandrei

    Dandrei Member Пользователи

    Joined:
    Nov 4, 2017
    Messages:
    41
    Мне тоже будет достаточно самого простого варианта)
    Djahat, поделитесь примером скрипта?))
     
  9. Djahat

    Djahat Well-Known Member Пользователи

    Joined:
    Jan 14, 2013
    Messages:
    543
    Город:
    Мордор
    Ну вот самый простой вариант:


    В шаблон вывода Content Downloader такое вносим:

    <PHP_SCRIPT=Ссылки недоступны для гостей скрипта-.ru/script-такойто.php>title=[DATAENCODE]тут заголовок письма[/DATAENCODE]
    mess=[DATAENCODE]тут сообщение[/DATAENCODE]
    to=[DATAENCODE]тут адрес почты кому[/DATAENCODE]
    from=[DATAENCODE]тут адрес почты от кого[/DATAENCODE]</PHP_SCRIPT>


    И файлик PHP кладем такой, на свой сервак, по адресу Ссылки недоступны для гостей скрипта-.ru/script-такойто.php

    Code:
    <?php
    /* тут про эту функцию https://www.php.net/manual/ru/function.mail.php */
    
    $title = mysql_real_escape_string($_POST[title]);
    $mess = mysql_real_escape_string($_POST[mess]);
    $to = mysql_real_escape_string($_POST[to]);
    $from = mysql_real_escape_string($_POST[from]);
    
    mail($to, $title, $mess, 'from:'.$from, '-f'.$from);
    
    echo 'Письмо отправлено.';
    
    ?>
    По такому принципу
     
    Root and Dandrei like this.
  10. Dandrei

    Dandrei Member Пользователи

    Joined:
    Nov 4, 2017
    Messages:
    41
    Спасибо большое!
    Буду пробовать))))
     
    Root and Djahat like this.
  11. kagorec

    kagorec Администратор Staff Member Администратор

    Joined:
    Jan 3, 2011
    Messages:
    4,442
    Location:
    Latvia
    Посмотрите в сторону телеграм, там без надобности вебсерва где будет работать php скрипт.
     
    xLime and Djahat like this.
  12. Dandrei

    Dandrei Member Пользователи

    Joined:
    Nov 4, 2017
    Messages:
    41
    Да, это тоже может пригодиться, спасибо)))
    Попробую поискать варианты решения, при возможности.
     
  13. kagorec

    kagorec Администратор Staff Member Администратор

    Joined:
    Jan 3, 2011
    Messages:
    4,442
    Location:
    Latvia
    В конце списка ссылка на телеграм api, пример



    Code:
    https://api.telegram.org/bot823456509:AAEsdfgASDsdfgbVCuNf2JPoA4iU/sendMessage?chat_id=264567376&text=[YANDEX] Парсинг завершен!
    [​IMG]
     
    Last edited: Mar 29, 2019
    Maxxx, mur and Dandrei like this.
  14. Dandrei

    Dandrei Member Пользователи

    Joined:
    Nov 4, 2017
    Messages:
    41

    Так просто?!)))
    Единственное, этот способ не отправляет файл с результатом Парсинга.
    Но сам способ уведомления зачетный!
     
  15. mur

    mur New Member Пользователи

    Joined:
    Jun 5, 2014
    Messages:
    45
    спасибо за решение! Подскажите как создать такое условие: если вылезла recaptcha2 - то отправить сообщение в телегу
     
  16. kagorec

    kagorec Администратор Staff Member Администратор

    Joined:
    Jan 3, 2011
    Messages:
    4,442
    Location:
    Latvia
    Предположительно то можно решить с помощью макросов CHECKENTRY который проверит наличие кода каптчи и GETMORECONTENT откроет ссылку если условия чекентри сработало.
     
    mur and Root like this.
  17. mur

    mur New Member Пользователи

    Joined:
    Jun 5, 2014
    Messages:
    45
    подскажите как быть с блокировкой телеграма)) если я использую русские прокси для парсинга
    и гетморконтент не может загрузить Ссылки недоступны для гостей....
     
  18. kenny872012

    kenny872012 Well-Known Member Пользователи

    Joined:
    Feb 18, 2018
    Messages:
    324
    Используйте для работы с telegram api не русские socks5 прокси. Или пользуйтесь vk api для отправки уведомлений вконтакте Ссылки недоступны для гостей
     
    Root, mur and kagorec like this.
  19. Amarous

    Amarous Member Пользователи

    Joined:
    Sep 19, 2012
    Messages:
    33
    Сделал все по инструкции, закинул на сервак site.ru/tele.php
    Code:
    <?php
    header("Location: https://api.telegram.org/bot00000000000:AAAAAAAAAAAAAAAAAAA/sendMessage?chat_id=0000000000&text=ГОТОВО!");
    exit;
    ?>
    
    при открытии вручную, Бот присылает сообщение.
    А если указать ссылку в Ctrl+U, адреса скриптов, выполняемых после парсинга контента - site.ru/tele.php
    по завершению проекта, Бот молчит. я чет не так делаю?
    [​IMG]
    Добавить ссылку api в список проекта не могу, так как проект подгружает список ссылок из файла, который часто меняется
     
    Last edited: Jan 5, 2020
  20. Root

    Root Администратор Администратор

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    Замените файл Content Downloader.exe (в папке с программой) этим файлом:
    Hidden Content:
    **Hidden Content: To see this hidden content your post count must be 19 or greater.**
     
    Amarous likes this.

Share This Page