[Python] Парсер mail.ru ответов

Discussion in 'PHP' started by sleemp, 19 Sep 2011.

  1. sleemp

    sleemp New Member

    Joined:
    16 Sep 2011
    Messages:
    5
    Likes Received:
    4
    Reputations:
    15
    Доброго времени суток.
    Предлагаю вашему вниманию скрипт парсинга email-адресов с сервиса mail.ru ответов.

    Запускать примерно так:
    python mail_otvety.py http://otvet.mail.ru/Категория_для_парсинга/ Куда_сохранять.txt

    Рабочие параметры:
    python mail_otvety.py http://otvet.mail.ru/love/ love.txt

    Скрипт проходит 50 последних страниц в категории (больше сервис не отдает) и собирает адреса. Удаляет дубликаты и сортирует список.

    За один прогон в среднем выходит 500-700 адресов. При повторном прогоне в тот же файл в него добавляются новые записи и он снова сортируется. Можно настроить переодический запуск по крону, скажем, раз в полчаса. За сутки при нормально раскладе должно набраться 20к адресов. Все они будут живыми и тематическими.

    Как дальше воспользоваться ими - ограничено вашей фантазией и возможостями.

    Тестировалось на версии 2.7, насчет работоспособности на третьей ветке не уверен.

    Качать тут: http://zalil.ru/31721210
    Пароль: antichat

    Пример выходного файла: http://zalil.ru/31721223 (2к+ адресов)
    Пароль: antichat

    P.S. Буду рад идеям и предложениям на тему "что и где можно спарсить", если таковые у вас имеются, могу на досуге попробовать реализовать особо интересные варианты.
     
    3 people like this.
  2. sleemp

    sleemp New Member

    Joined:
    16 Sep 2011
    Messages:
    5
    Likes Received:
    4
    Reputations:
    15
    Переделал скрипт.

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

    Увы, на моем гигагерцевом селероне и 3г свистке прирост скорости не особо заметен. Да еще инет больше пяти потоков не тянет, подлагивает с ошибкой 503.

    Еще один досадный пункт - отвечающие в пределах категории одни и те же почти, выхлоп мыльников не намного увеличился.

    Параметры запуска немного изменились.

    Теперь запускать скрипт надо так:
    python mail_otvety.py CATEGORY DEPTH
    где CATEGORY название категории love, relations и т.д. (кому надо, разберется.)
    DEPTH - глубина прохода по категории. mail.ru не отдает больше 50 страниц, потому в скрипте намертво прибито не принимать DEPTH > 50. В некоторых категориях выдают и того меньше. Рекомендую проверять заранее сколько страниц можно спарсить (к скрипту потом прикручу подобную проверку)

    Вот результат тестового запуска по категории love, depth=50:
    total questions: 999
    total mails: 1278
    total time: 18.268980217

    Скрипт: http://zalil.ru/31739455
    Пароль: antichat

    Результат тестового прогона: http://zalil.ru/31739457
    Пароль: antichat

    Пробовал перевести скрипт на wap версию ответов, но там выхлоп заметно снизился, слишком мало вопросов отдает сайт.
     
  3. D1mka

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

    Joined:
    2 Jan 2008
    Messages:
    123
    Likes Received:
    14
    Reputations:
    2
    Файл не найден.
    не у кого не осталось?
     
Loading...
Similar Threads - Python Парсер mail
  1. GAiN
    Replies:
    3
    Views:
    7,279