Запуск WBapp через каждые 40 страниц и передача кукисов

Тема в разделе "Парсинг конкретных сайтов по запросу (ПЛАТНО)", создана пользователем leskont, 27 дек 2015.

  1. leskont

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

    Регистрация:
    19 апр 2013
    Сообщения:
    10
    В общем задача, в заголовке...
    Подробнее: Имеется сайт, который генерирует картинки скриптом, при этом скрипт отдает лишь 40 картинок в день (вернее каждые 12 часов) дальше генерирует заглушку. Ограничение действует на 1 аккаунт.
    Регистрация аккаунта не требует подтверждения имейла поэтому принимает несуществующие адреса, плюс капча...
    Не авторизованным пользователями страница вовсе не показывается.
    Но при попытке зарегистрировать с одного ip тонну аккаунтов Apache блочит примерно на 120 аккаунте айпишник на сутки, при этом удаляет все созданные таким образом аккаунты, поэтому создавать аккаунты необбходимо по мере парсинга...
    Да, для с правки необходимо спарсить 320000 страниц этого сайта. (поэтому в 1 поток это задача не на 1 месяц, при 50 потоках задача на 3-4 дня... что приемлимо)
    План действий такой, каждые 40 страниц запускать WBapp, создавать аккаунт и передавать кукисы на следующие 40 ссылок. Сам парсинг же должен идти через встроенную библиотеку (без использования wbapp) При этом все это делать в многопоточности и через прокси...

    Нашел вариант авторизация методом POST, каждые n элементов... но передавать в POST нечего потому как необходимо создать новый аккаунт.
    Разобрался как передавать кукисы из WBapp, но только в текущий документ, а необходимо передать новые кукисы в следующие 40 страниц... запускать каждый документ WBapp при 50 потоках здорово повешают систему и уменьшат скорость парсинга в несколько раз...

    Вопрос собственно как заставить CD работать в таком режиме?
     
  2. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Есть макрос шаблона вывода [INT_ID] (вставка нарастающего числа). Он может сбрасываться при достижении нужного значения, в вашем случае, это 40
     

    Вложения:

  3. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Если его использовать в связке с макросом [IF1]условие[THEN]если да[ELSE]если нет[/IF1] (Ссылки недоступны для гостей), то можно добиться вывода определенного кода/макроса каждые 40 срабатываний (каждые 40 документов). Выводить каждые 40 документов будем, как вы поняли, макрос [WBAPP] (который будет возвращать cookies)):
    Если будут вопросы, пожалуйста, обращайтесь.

    С уважением к вам, Сергей.
     
  4. leskont

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

    Регистрация:
    19 апр 2013
    Сообщения:
    10
    Да я как раз находил этот счетчик и тут у меня несколько вопросов на которые не смог найти ответов в мануалах:
    1. То есть если я правильно понял этот счетчик общий на все 50 потоков парсера?
    2. Когда из WBapp передаются кукисы, они передаются только в текущий документ? Или следующий по списку так же получит эти же кукисы? (если в шаблоне вывода стоит например проверка значения ID и WBapp запускается только при значении ID = "1", то есть первый из 40)
    3. Если все вышеперечисленное работает тогда предвижу проблему когда 2,3,4,... документы получат предыдущие кукисы потому как WBapp попросту не успел отработать и выдать новые...
     
  5. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    1) Общий
    2) Следующий так же получит те же новые cookies, пока cookies не будут сменены вновь
    3) Возможно
     
  6. leskont

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

    Регистрация:
    19 апр 2013
    Сообщения:
    10
    Копал копал, и наткнулся на вот такую беду...
    Чтобы зарегистрировать новый аккаунт необходимо выйти из старого, и перейти на страницу регистрации... план действий:
    1.очистить куки [CLEARCACHE]
    2.перейти на страницу регистрации [GO]
    Когда попробовал выполнить увидел что на странице все еще отображается имя прошлого пользователя... а при переходе на страницу регистрации вместо привычной информации об аккаунте увидел просьбу залогинитсья...
    При отчистки кукисов в браузере или даже в самой программе такого не происходит только WBApp...

    Макрос [CLEARCACHE] в WBApp работает не так как нужно...
    Попробовал воспроизвести похожее поведение сайта в обычном браузере, оказалось сайт ведет себя так когда удаляешь одну строку сессии в кукисах, не удаляя все остальное... Если удалить все кукисы этого сайта тогда все впорядке...

    Поправьте пожалуйста, очень уж нужно...
     
  7. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Может проще создать событие клика по кнопке "выйти".

    С оболочкой Internet Explorer'a для программирования все через одно очень непристойное место сделано! Хотя сам по себе IE работает нормально!

    С уважением к вам, Сергей.
     
  8. leskont

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

    Регистрация:
    19 апр 2013
    Сообщения:
    10
    Действительно, одни непристойности в голову лезут когда пытаешься настроить WBApp чтобы стабильно отрабатывал... не первый раз я с ним борюсь уже... Вот такая беда на этот раз, уже не знаю что и делать:

    вот такой код прописан в WBapp, в [CDDATA:1] передаю строку длинной 15 случайных символов... И в принципе сайт отрабатывает с этими данными, но проблема в другом... первый [GO] отрабатывает нормально, а второй [GO] где переход на форму регистрации либо вовсе пролистывается и даже зеленым не помечается что вроде отработал, либо показывает что отработал переходит на [WAIT] но страница как была на сайт.ru/login так и есть
    :bug:

    PS: Все наблюдения смотрю в окне при парсинге в 1 поток стоит галочка "Показывать WBApp при парсинге"
     
    Последнее редактирование: 27 дек 2015
  9. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Чтобы как-то помочь вам в этом, нужно смотреть на живом примере (разбираться с вашим проектом).

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

    Спасибо!
     
  10. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Все-таки скиньте ваш проект мне на почту sbfroot@gmail.com (постараюсь найти сегодня время на него).
     
  11. leskont

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

    Регистрация:
    19 апр 2013
    Сообщения:
    10
    Отправил, заранее спасибо... а то голову ломаю уже неделю...
     
  12. leskont

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

    Регистрация:
    19 апр 2013
    Сообщения:
    10
    Еще вот какой вопрос, я к сожалению не последний человек в программировании и могу написать худо бедно скриптик на каком нибудь питоне для реализации столь тривиальной задачки как регистрация на сайте.
    Вопрос: возможно ли запускать внешние скрипты и передавать из них какие либо данные, например те же кукисы... мне видится такая реализация более надежной нежели ИЕ приплетать...
    PS: там же через некий костыль можно наладить бесперебойную работу и стабильное срабатывание каждые 40 страниц... если вдруг потоки будут обгонять авторизацию...
     
  13. leskont

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

    Регистрация:
    19 апр 2013
    Сообщения:
    10
    Нашел Ссылки недоступны для гостей запуск локальных php скриптов... Значит план такой передаем на скрипт [INT_ID], скрипт высчитывает какие куки сейчас нужно подгрузить, отправляем строку с куками через edit. Такой вопрос, как их установить в текущий документ?
     
  14. uzsky

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

    Регистрация:
    18 мар 2013
    Сообщения:
    2
    Хороший вопрос, как раз второй день ищу по топикам ответ на аналогичный вопрос.
    Если я не ошибаюсь (сорри, я только как второй день пытаюсь разобраться с программой), то передачи кукисов нету ((
    только непосредственно из данных заданных в самом проекте.

    Если это не так, то буду рад увидеть решение.
     
  15. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Не успеваю всем отвечать. Планирую заняться этим вопросом в ближайшие три дня (ничего не обещаю).

    Надеюсь на понимание.

    С уважением к вам, Сергей.
     
  16. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте!

    Скачайте доработанную версию программы:
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    В ней есть новый макрос [SETCOOKIES]
    Если потребуется помощь, обращайтесь...

    С уважением к вам, Сергей.
     
    Djahat нравится это.

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