Парсер POST

Тема в разделе "Парсинг конкретных сайтов", создана пользователем KPOCAB4EG, 9 янв 2017.

Метки:
  1. KPOCAB4EG

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

    Регистрация:
    6 авг 2014
    Сообщения:
    19
    Добрый день, как парсить POST-запросами? У меня есть сайт вида "Ссылки недоступны для гостей, зарегистрируйтесь или авторизуйтесь на форуме! " (без index.php и т.д.), заголовки (включая данные авторизации) и т.д. и данные в которых одна переменная (именно она задает выводимый результат который надо спарсить). Данные вида:

    {
    "123": "321",
    "456": "переменная",
    "789": "987"
    }

    Вот только куда и как мне это (данные) подставлять?
     
  2. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    7.856
    Адрес:
    sbfroot@gmail.com
    Город:
    Краснодар
    KPOCAB4EG нравится это.
  3. KPOCAB4EG

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

    Регистрация:
    6 авг 2014
    Сообщения:
    19
    Спасибо! Не по теме, но в продолжении, я добился получения ответа, но ответ приходит как тут: http://forum.sbfactory.ru/threads/problema-s-kodirovkoj-pri-parsinge-sajta.4396/

    P.S. Вот в таком виде ответ должен приходить, вроде кодировка utf-8

    HTTP/1.1 200 OK
    Server: nginx/1.8.1
    Date: Tue, 10 Jan 2017 19:30:48 GMT
    Content-Type: application/json; charset=utf-8
    Connection: keep-alive
    Vary: Accept-Encoding
    Content-Length: 450
     
    Последнее редактирование: 10 янв 2017
  4. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    7.856
    Адрес:
    sbfroot@gmail.com
    Город:
    Краснодар
    Приложите проект.
     
    KPOCAB4EG нравится это.
  5. KPOCAB4EG

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

    Регистрация:
    6 авг 2014
    Сообщения:
    19
    Всё, разобрался, в Custom Headers у меня было "Accept-Encoding: gzip", убрал теперь всё ок! Спасибо!

    Если можно, последний вопрос, Custom Headers меняются после строки [ROTATION]?

    То есть, я пишу всего лишь:

    Content-Type: application/json; charset=UTF-8
    [ROTATION]
    Content-Type: application/json; charset=UTF-9
    [ROTATION]
    Content-Type: application/json; charset=UTF-10
    [ROTATION]
    Content-Type: application/json; charset=UTF-11
    [ROTATION]
    Content-Type: application/json; charset=UTF-12
    [ROTATION]
    Content-Type: application/json; charset=UTF-13
    и для 6 запросов будут разные строки? А после прохождения всех 6 - по новой?
     
  6. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    7.856
    Адрес:
    sbfroot@gmail.com
    Город:
    Краснодар
    Пожалуйста.

    Да.
     
    KPOCAB4EG нравится это.
  7. KPOCAB4EG

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

    Регистрация:
    6 авг 2014
    Сообщения:
    19
    А множественные [PARAM] не работают с Custom Headers?

    Ссылка
    Ссылки недоступны для гостей, зарегистрируйтесь или авторизуйтесь на форуме! :123|||456​

    Custom Headers
    Data: [PARAM(1)]​

    Сам POST
    {"123":"321","456":"[PARAM(2)]","789":"987"}​

    И не работает... Может не так что то делаю? В Custom Headers у меня находится токен, его надо менять, а в POST - айди привязанный к токену. То есть тут важно чтобы конкретные значения друг с другом ставились, а не просто рандом
     
  8. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    7.856
    Адрес:
    sbfroot@gmail.com
    Город:
    Краснодар
    Скачайте и установите доработанную версию программы (в программе: главное меню - файл - центр обновлений -> кнопка "обновить программу/скачать обновленную сборку").
     
    KPOCAB4EG нравится это.
  9. KPOCAB4EG

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

    Регистрация:
    6 авг 2014
    Сообщения:
    19
    В Custom Header подставляется, а в POST-запрос нет (проверил POST без [PARAM], а в Custom Headers - [PARAM(3)] - всё ок - читает [PARAM(3)], а в POST запросе не разделяет на (1), (2), (3))
     
  10. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    7.856
    Адрес:
    sbfroot@gmail.com
    Город:
    Краснодар
    В POST-запрос подставляется:

    2017-01-13_00-31-20.png

    2017-01-13_00-30-25.png
     
    KPOCAB4EG нравится это.
  11. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    7.856
    Адрес:
    sbfroot@gmail.com
    Город:
    Краснодар
    Проверил другие функции, нашел, что в инструменте задания границ парсинга в POST-данных не подставлялись [PARAM(с индексами)] и во вкладке "Ссылки".

    Доработал:
    Скачайте и установите доработанную версию программы (в программе: главное меню - файл - центр обновлений -> кнопка "обновить программу/скачать обновленную сборку").
     
    Kreol и KPOCAB4EG нравится это.
  12. KPOCAB4EG

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

    Регистрация:
    6 авг 2014
    Сообщения:
    19
    Всё заработало!) Спасибо!!
     
    Последнее редактирование модератором: 13 янв 2017
    Root нравится это.
  13. yup

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

    Регистрация:
    20 июн 2012
    Сообщения:
    17
    Добрый день!
    Мой вопрос, как я понимаю, из той же области что и обсуждаемый в топике.

    Сайт "а пробел t пробел i точка s u" (сорри что в таком виде пишу, не очень хочется что бы в поисковики попало это обсуждение в контексте данного сайта). HttpFox показывает, что выдача инфо по грузам происходит через application/json запрос по адресу (см. скрин), при этом POST Data выглядит так:
    [​IMG]
    Т.е. в данных фигурирует многократное открытие и закрытие скобок {}, ну и куча других знаков. Попытка в лоб добавить эти данные в окно "POST данные для вкладки контент" (как в инструкции выше) к успеху не привела, при открытии страницы задания границ CD пишет "Программе не удалось загрузить WEB-страницу (HTTP/1.1 500 Internal Server Error)". Помогите разобраться с проблемой...
     
  14. kagorec

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

    Регистрация:
    3 янв 2011
    Сообщения:
    2.732
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
     
  15. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    7.856
    Адрес:
    sbfroot@gmail.com
    Город:
    Краснодар
    Здравствуйте.

    Просто включите парсинг через Internet Explorer
    2017-04-23_06-00-07.png

    2017-04-23_06-00-40.png
     
  16. yup

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

    Регистрация:
    20 июн 2012
    Сообщения:
    17
    Где то я что то видимо не так делаю, но не пойму что и где. При открытии окна настройки границы вылезает сначала это
    [​IMG]
    Потом так
    [​IMG]
    А вы не могли бы выложить проект с примером, я бы покопался в нем, сравнил бы что я не так делаю...
     
  17. yup

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

    Регистрация:
    20 июн 2012
    Сообщения:
    17
    А, вот вроде увидел разницу, вы ссылку используете другую. Я .../api/loads а вы .../#?filter=... и т.д. А откуда вы такую взяли?
     
  18. Root

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

    Регистрация:
    10 мар 2010
    Сообщения:
    7.856
    Адрес:
    sbfroot@gmail.com
    Город:
    Краснодар
    Выбрал в браузере нужные параметры поиска на сайте, выполнил поиск и скопировал получившуюся ссылку из браузера.
     
  19. yup

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

    Регистрация:
    20 июн 2012
    Сообщения:
    17
    Все, понял, я не в том направлении копал. Я все продолжал пытаться настраивать POST запрос по аналогии с инструкциями из верха поста, а ваши сегодняшние инструкции про другой путь. По нему добиться получения данных от сайта удалось, буду дальше настраивать. Хотя, конечно, в таком виде данные более "грязные" что ли, тот ответ сайта что я вижу через httpfox намного более компактный, структурированный и легко разбираемый на нужные составляющие. Но, в принципе, это не особая проблема, и из "грязных" данных что надо можно вытащить.
     
  20. yup

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

    Регистрация:
    20 июн 2012
    Сообщения:
    17
    И все таки при таком подходе проблема осталась. По такой ссылке задаются параметры фильтра для поиска и можно получить первую страницы (по умолчанию 10шт) результатов. А вот как получить вторую и последующую страницу, ну или, хотя бы как вариант, настроить отображение не по 10 а по 100 результатов?
     

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