Оповещение о новых сообщениях в чате.

Тема в разделе "Новости и обсуждения сайта и форума", создана пользователем UL7AAjr, 8 янв 2015.

  1. radioengineer

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

    Сообщения:
    3.595
    Симпатии:
    357
    Адрес:
    Алматы
    Ну это не кроссплатформенно будет, мне конечно для #linux надо, но чтобы и на винде запускалось.
  2. koteika

    koteika В доску свой

    Сообщения:
    768
    Симпатии:
    118
    Род занятий:
    программирование
    ну qt тогда с целой горой библиотек которые потянуться вслед за прогой этой...

    я вообще чисто из опен соурс убеждений не рассматриваю написание софта на другие операционки кроме как линукс

    питон кросплатформенный, можно что то на wx ли gtk'python сварганить.. но мазахизм изрядный будет походу.
  3. UL7AAjr

    UL7AAjr В доску свой

    Сообщения:
    1.915
    Симпатии:
    318
    Род занятий:
    инженер-программист
    Адрес:
    Алма-Ата
    В общем просто все. Надо выполнить http запрос
    http://www.radiotech.kz/index.php?taigachat/list.json

    В ответ придет текст последних сообщений в чате, у каждого сообщения есть цифровой код. Изменение цифрового кода последнего сообщения говорит о появлении нового сообщения. Остается этот текст отпарсить и показать в удобном виде.

    PS: Из бровзера может не получится, если вы в момент запроса вошли под своим именем (бровзер отправит куки для сессии, и запрос вернет ошибку). Надо выйти и потом выполнить запрос
    Последнее редактирование: 22 май 2015
    radioengineer нравится это.
  4. SeregaZ

    SeregaZ В доску свой

    Сообщения:
    391
    Симпатии:
    38
    колдую тут над бухгалтерским софтом и подумал что надо бы прикрутить систему проверки правильности бинов да рннов. никогда не работал с этими запросами, гетами и постами... а тут вроде похожая задача. осложняется все еще и капчей на том сайте http://kgd.gov.kz/ru/services/taxpayer_search

    какой должен быть алгоритм работы?
    1. отправить запрос на загрузку страницы на сайт.
    2. получить картинку капчи и куки?
    3. вывести пользователю эту картинку и поле для ввода значения из капчи
    4. отправить на сервер значение бина или рнна, что я там вбил, плюс значение из капчи и куки?
  5. .ctor

    .ctor В доску свой

    Сообщения:
    720
    Симпатии:
    209
    Род занятий:
    парогенератор
    Адрес:
    Алматы
    1. отправить GET запрос. Получить ID Сессии (Cookie)
    2. Отправить Get запрос на капчу, передать ID сессии
    3. Вывести пользователю картинку
    4. POST запрос, с передачей параметров формы, сессии и введенной капчи.
    5. Прочитать поток, разпарсить и в случае не удачного результата в п1
  6. SeregaZ

    SeregaZ В доску свой

    Сообщения:
    391
    Симпатии:
    38
    у меня где-то даже пример кода был... во! составил так:

    Header$ = "GET /ru/services/taxpayer_search HTTP/1.0" + #CRLF$
    Header$ + "Host: kgd.gov.kz" + #CRLF$
    Header$ + #CRLF$


    и получил ответ:
    HTTP/1.1 200 OK
    Server: nginx/1.8.0
    Date: Wed, 21 Oct 2015 19:47:21 GMT
    Content-Type: text/html; charset=utf-8
    Connection: close
    X-Powered-By: PHP/5.5.30
    X-Drupal-Cache: MISS
    Expires: Sun, 19 Nov 1978 05:00:00 GMT
    Cache-Control: no-cache, must-revalidate, post-check=0, pre-check=0
    Content-Language: ru
    X-Generator: Drupal 7 (http://drupal.org)

    <!doctype html>
    <!--[if lt IE 7]> <html class="no-js lt-ie

    с doctype html уже код страницы пошел. по идее значение куки должно же было быть в шапке, верно? а нету :(

    дальше картинка имеет ссылку с кодом: http://kgd.gov.kz/ru/image_captcha?sid=17962193&amp;ts=1445457548
    amp;ts=1445457548 видимо ошибка "прАграммиста" налоговой, а вот 17962193 штука полезная. при изменении этого кода меняются и буковки. но самое главное этот код встречается в одном из полей формы отправки запроса: captcha_sid

    то есть раз куки вроде как нет, а сам айди рисунка капчи участвует в форме отсылки, значит можно сделать запрос с посылкой всегда одинакого айди капчи, а следовательно и всегда одного и того-же набора символов с капчи и сервер будет кушать. только что-то у меня не вышло :) по идее сохранив страничку сайта с данной формой на жестком диске и исправив ссылку в тэге <form> все должно было работать... однако нифига :(

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