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

Тема в разделе "Решение различных задач по парсингу", создана пользователем dexperanto, 28 июл 2018.

  1. dexperanto

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

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

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

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

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

    Регистрация:
    14 янв 2013
    Сообщения:
    543
    Город:
    Мордор
    Меню Cntrl+u

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

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

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

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

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

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


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

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

    Регистрация:
    14 янв 2013
    Сообщения:
    543
    Город:
    Мордор
    Про данные для авторизации не понял, куда авторизоваться.

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

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

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

    Регистрация:
    4 ноя 2017
    Сообщения:
    41
    Да, про загрузку на FTP как-то сразу и не подумал, спасибо!

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

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

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

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

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

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

    Регистрация:
    4 ноя 2017
    Сообщения:
    41
    Мне тоже будет достаточно самого простого варианта)
    Djahat, поделитесь примером скрипта?))
     
  9. Djahat

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

    Регистрация:
    14 янв 2013
    Сообщения:
    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

    Код:
    <?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 и Dandrei нравится это.
  10. Dandrei

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

    Регистрация:
    4 ноя 2017
    Сообщения:
    41
    Спасибо большое!
    Буду пробовать))))
     
    Root и Djahat нравится это.
  11. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.429
    Адрес:
    Latvia
    Посмотрите в сторону телеграм, там без надобности вебсерва где будет работать php скрипт.
     
    xLime и Djahat нравится это.
  12. Dandrei

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

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

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.429
    Адрес:
    Latvia
    В конце списка ссылка на телеграм api, пример



    Код:
    https://api.telegram.org/bot823456509:AAEsdfgASDsdfgbVCuNf2JPoA4iU/sendMessage?chat_id=264567376&text=[YANDEX] Парсинг завершен!
    [​IMG]
     
    Последнее редактирование: 29 мар 2019
    Maxxx, mur и Dandrei нравится это.
  14. Dandrei

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

    Регистрация:
    4 ноя 2017
    Сообщения:
    41

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

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

    Регистрация:
    5 июн 2014
    Сообщения:
    44
    спасибо за решение! Подскажите как создать такое условие: если вылезла recaptcha2 - то отправить сообщение в телегу
     
  16. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.429
    Адрес:
    Latvia
    Предположительно то можно решить с помощью макросов CHECKENTRY который проверит наличие кода каптчи и GETMORECONTENT откроет ссылку если условия чекентри сработало.
     
    mur и Root нравится это.
  17. mur

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

    Регистрация:
    5 июн 2014
    Сообщения:
    44
    подскажите как быть с блокировкой телеграма)) если я использую русские прокси для парсинга
    и гетморконтент не может загрузить Ссылки недоступны для гостей....
     
  18. kenny872012

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

    Регистрация:
    18 фев 2018
    Сообщения:
    312
    Используйте для работы с telegram api не русские socks5 прокси. Или пользуйтесь vk api для отправки уведомлений вконтакте Ссылки недоступны для гостей
     
    Root, mur и kagorec нравится это.
  19. Amarous

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

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

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Замените файл Content Downloader.exe (в папке с программой) этим файлом:
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 19 постов.**
     
    Amarous нравится это.

Поделиться этой страницей