удалятор сообщений вк

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by kosmo987, 8 Sep 2010.

  1. kosmo987

    kosmo987 Member

    Joined:
    28 Apr 2010
    Messages:
    0
    Likes Received:
    6
    Reputations:
    1
    scdd
     
    #1 kosmo987, 8 Sep 2010
    Last edited: 24 Jan 2016
  2. ZARO

    ZARO Elder - Старейшина

    Joined:
    17 Apr 2009
    Messages:
    327
    Likes Received:
    129
    Reputations:
    54
    Дык парсь кол-во новых сообщений.
     
  3. Chrome~

    Chrome~ Elder - Старейшина

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    Загружай страницу _http://vkontakte.ru/mail.php и парси с нее нужные тебе данные, в том числе и id сообщений.
     
  4. Chrome~

    Chrome~ Elder - Старейшина

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    То есть можно удалять любое количество сообщений одним запросом?
    Неплохим вариантом будет такой:

    1) Переходим по адресу _http://vkontakte.ru/mail.php и парсим количество сообщений из строки "Выводятся сообщения #1-20 из N". N запоминаем. Парсим также id последнего сообщения (которое в самом верху).
    2) Переходим по адресу _http://vkontakte.ru/mail.php?st=N и парсим id самого первого сообщения (которое в самом низу).
    3) Просто добавляем в запрос на удаление сообщений все id от первого до последнего и отсылаем на сервер.
     
  5. Chrome~

    Chrome~ Elder - Старейшина

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    Проверил, действительно удаляется несколько тысяч сообщений всего одним запросом ))

    Кстати. Если после отправки запроса сразу же зайти в личные сообщения и несколько раз обновить страницу, то можно увидеть, что сообщения удаляются постепенно. Каждый раз становиться все меньше и меньше сообщений.
     
  6. good_man

    good_man New Member

    Joined:
    24 May 2010
    Messages:
    112
    Likes Received:
    3
    Reputations:
    -2
    >>как мне узнать что сообщения кончились?

    да да, полюбасу парсь значение

    Выводятся сообщения #1-20 из >значение<.</div>
    переводи в int и учитывай где это нужно
     
  7. Alex_g

    Alex_g New Member

    Joined:
    13 Jul 2010
    Messages:
    11
    Likes Received:
    0
    Reputations:
    0
    попробуй с помощью API Вконтакте.
    messages.get – возвращает список входящих либо исходящих сообщений текущего пользователя.

    messages.delete – удаляет сообщение.
     
  8. RedFern.89

    RedFern.89 Member

    Joined:
    20 Jan 2010
    Messages:
    575
    Likes Received:
    48
    Reputations:
    0
    kosmo987, юзай API Vkontakte. Если нужна помощь - стучи в асю 947-685
     
  9. mr. Jazz

    mr. Jazz New Member

    Joined:
    15 Jun 2009
    Messages:
    0
    Likes Received:
    0
    Reputations:
    0
    Затестил, собшения ушли в мусор. 1 раз ошибка вылезла, нажал продолжить. было 6к сообшений.

    руками бы удалять все ушла вечность. респект ТС!
     
  10. Sajeys

    Sajeys Banned

    Joined:
    24 Aug 2010
    Messages:
    206
    Likes Received:
    35
    Reputations:
    5
    Программа сойдет.
    Не помешал бы хороший дизайн.
     
  11. dupD0M

    dupD0M Elder - Старейшина

    Joined:
    18 May 2010
    Messages:
    1,130
    Likes Received:
    74
    Reputations:
    34
    странно ну у меня как бы не работает!!не хочет почему то удалять!и после ошибки клацнул продолжить все равно не удаляет(
     
  12. Chrome~

    Chrome~ Elder - Старейшина

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    1) Использовать сокет и скачивать только определенное количество байт.
    2) Использовать поле Range в своем HTTP запросе, с помощью которого можно получить только необходимую часть страницы.
    Да, из отдельного потока.
     
  13. greki_hoy

    greki_hoy Member

    Joined:
    4 Mar 2010
    Messages:
    326
    Likes Received:
    57
    Reputations:
    41
    must have must read
    Джонс, Оланж Программирование в сетях Microsoft Windows.pdf
     
  14. AlexTheC0d3r

    AlexTheC0d3r Elder - Старейшина

    Joined:
    25 Jul 2008
    Messages:
    388
    Likes Received:
    179
    Reputations:
    18
    плохая идея. сообщения могут находиться не по-порядку. т.е. я могу иметь сообщения с ид 4000-5000 и 8000-9000.
     
  15. Chrome~

    Chrome~ Elder - Старейшина

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    Ну в общем то да, идея не наилучшая.
    Можно добавить побольше логики.
    Например, если у пользователя (id последнего сообщения - id первого сообщения) = 10000, а сообщений всего 200, то, наверное, будет легче пройтись по страницам и получить все необходимые id. Но с другой стороны, чтобы получить все эти реальные id сообщений, нам придется скачивать около 10 страниц, что также займет какое то время. Может быть действительно легче просто отослать один POST запрос с диапазоном, чем ходить по страницам.
     
  16. -Lord-

    -Lord- New Member

    Joined:
    14 May 2010
    Messages:
    38
    Likes Received:
    0
    Reputations:
    0
    А зачем изобретать "велосипед" ? Есть же программа "Vkbot" которая без проблем сообщения и со стены всё удаляет....
     
  17. Chrome~

    Chrome~ Elder - Старейшина

    Joined:
    13 Dec 2008
    Messages:
    936
    Likes Received:
    162
    Reputations:
    27
    Омг... Ну это, по сути, можно сказать о любом софте. Зачем писать новые графические пакеты, текстовые редакторы, разнообразные утилиты для компа да и любой софт для ВК, если все уже реализовано?
     
  18. ViLKaa

    ViLKaa Member

    Joined:
    24 Jul 2009
    Messages:
    41
    Likes Received:
    7
    Reputations:
    5
    я думаю проще юзать апи
    messages.get + messages.delete

    В гет есть такие штуки как
    offset
    смещение, необходимое для выборки определенного подмножества сообщений.
    count
    количество сообщений, которое необходимо получить (но не более 100).
    при получении гета. смотреть послений из 100 полученных и запихивать его в офсет для следующего гета
     
  19. Bmite

    Bmite Робот-Казанова

    Joined:
    27 Feb 2007
    Messages:
    336
    Likes Received:
    81
    Reputations:
    0
    АП
    есть актуальные удаляторы?тот,что выкладывал космос - не работает!(