Парсинг ссылок с динамичного сайта (узнать адреса страниц с комментариями)

Тема в разделе "Общее", создана пользователем monarxreg, 25 сен 2017.

  1. monarxreg

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

    Регистрация:
    25 сен 2017
    Сообщения:
    11
    Добрый день,
    Есть сайт на котором продаются определенный софт.
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Задача спарсить ссылки на профили пользователей, которые пишут комментарии к продукту.
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Трудность в том что не понятно как реализована система вывода контента на сайте.
    Вот пример
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Вкладка обсуждение, я помещал все ссылки на все страницы (&page=3 ... &page=10), а он парсит всего несколько пользователей. Хотя на страницы их видно. Как спарсить ссылки на профили на этом сайте.
     
  2. kagorec

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

    Регистрация:
    3 янв 2011
    Сообщения:
    4.431
    Адрес:
    Latvia
    ctrl+h обработку DOM включили?
     
  3. Root

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

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

    Ссылки недоступны для гостей

    2017-09-25_12-29-18.png
     
    monarxreg и kagorec нравится это.
  4. monarxreg

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

    Регистрация:
    25 сен 2017
    Сообщения:
    11
    Простите что не сразу ответил. Спасибо вам, помогли!
     
    Root нравится это.
  5. monarxreg

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

    Регистрация:
    25 сен 2017
    Сообщения:
    11
    Добрый день, уважаемый Root. Долгое время ваш способ работал, но сейчас данная функция перестала работать, ну то есть в заголовке адрес тот же остался, а когда по нему заходишь в браузере или в программе парсинга сайтов, пишет ошибка 404 страница не найден. Может быть Вы или кто-то другой, может подсказывать, какой еще есть способ парсить ссылки с данной страницы.
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Заранее всем спасибо!
     
  6. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    wbapp подключайте (ctrl+h) галочка Контент
     
    monarxreg нравится это.
  7. lavr2004

    lavr2004 Member Пользователи

    Регистрация:
    31 май 2013
    Сообщения:
    35
    Если этот кусок кода на странице вам ни о чем не говорит, то тогда вам поможет только WBApp:))

    function overridePermalinks(placeholder,pageNum)
    {
    var permalinks = getElementsByClass("permalink",placeholder);
    if(!permalinks || !permalinks.length)
    return;
    for(var i = 0; i < permalinks.length; i++)
    {
    var a = permalinks;
    var commentIndex = a.href.lastIndexOf('#comment_');
    if(!commentIndex || (commentIndex + '#comment_'.length) > a.href.length)
    continue;
    var id = parseInt(a.href.substring(commentIndex + '#comment_'.length));
    if(!id)
    continue;
    var url = 'Ссылки недоступны для гостей' + pageNum + '&comment=' + id;
    a.href = url;
    }
     
    monarxreg нравится это.
  8. monarxreg

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

    Регистрация:
    25 сен 2017
    Сообщения:
    11
    Спасибо всем. Через "wbapp подключайте (ctrl+h) галочка Контент" работает.
     
  9. monarxreg

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

    Регистрация:
    25 сен 2017
    Сообщения:
    11
    Все привет, извините за простой вопрос, но сам не могу разобраться.
    Расскажу как сейчас делаю, прошу сильно не смеяться надо мной.
    есть сайт на котором мне надо спарсить ссылки
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    страница откуда надо парсить, имеет такой вид:
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    и от туда я беру продукт продающийся там
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    на данном продукте страниц с комментариями 228 - ну бывает и продукты, где странцы например 14
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    В общем захожу в ручную на
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Беру продукт -
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Смотрю его кол-во страниц, в нотепад++ создаю все 228 ссылок вручную (пздц я чайник)

    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Далее засовываю в парсинг и парсю пользователей добавивь в фильтр (/users/)
    на выходе получается
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    А теперь когда вы все поржали, скажите, как можно оптимизировать и ускорить процесс.
    Заранее спасибо!
     
  10. Root

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

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

    Через Firefox (shift+ctrl+i) можно узнать адреса страниц с комментариями:
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Там же нужно узнать HTTP-заголовки и вставить их в поле custom headers (в окне ctrl+h в Content Downloader)
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Для парсинга всех таких страниц:
    Ссылки недоступны для гостей
     
    kagorec нравится это.
  11. monarxreg

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

    Регистрация:
    25 сен 2017
    Сообщения:
    11
    Добрый день, спасибо за такой полный и расширенный ответ.
    Но дело в том что, сайт перестал отдавать инфу если заходить по ссылке
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    но парсит с адреса
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Как рекоммендовали далее включал и выключал wbapp (ctrl+h)
    pic1.png pic2.png pic3.png
     
  12. Root

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

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

    Вложения:

    • mql5_com.cdp
      Размер файла:
      37,1 КБ
      Просмотров:
      5
    monarxreg нравится это.
  13. monarxreg

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

    Регистрация:
    25 сен 2017
    Сообщения:
    11
    Да простите, сейчас сделаю полный цикл описанный вами.
     
  14. monarxreg

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

    Регистрация:
    25 сен 2017
    Сообщения:
    11
    Спасибо вам за то что вы даже проект сделали. Но все равно у меня не получается.
    Загрузил ваш проект, запустил парсинг, он мне спарсил страницы с html со всем содержимым. Пробовал через парсер ссылок сделать, он не парсит ссылки которые мне нужны.
    ---
    Может я не правильно задачу поставил.
    Мне нужно спарсить всех пользователей, которые оставляли комментарии. Пользователи выглядят так:
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    А парсер сам проходится по всем страницам от page1 до последней, и собирает на ней все ссылки которые имеют ввид
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Кто может помочь сделать проект, такой мне. Или наглядно по шагам объяснить, что куда тыкать.
    Могу небольшую символичную сумму заплатить за беспокойство.
     
  15. monarxreg

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

    Регистрация:
    25 сен 2017
    Сообщения:
    11
    А вообще самый идеальный вариант, это я просто указываю начальную ссылку
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Парсер ссылок, собирает все ссылки формата
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    Уже со страницами комментарями
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
    И на выходе просто сохраняет всех пользователей, которые были на странице продукта
    market/product/20937/comments/page1 ... loop and
    Скрытое содержимое:
    **Скрытое содержимое: доступно при наличии 1 постов.**
     
  16. Root

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

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

    Во всяком случае вы можете воспользоваться услугами по обучению или настройке Ссылки недоступны для гостей
     
    monarxreg нравится это.
  17. monarxreg

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

    Регистрация:
    25 сен 2017
    Сообщения:
    11
    Да я вам очень благодарен, что вы показали основы и суть, но к сожалению, дальше я не смог с этим разобраться.
    Вам еще раз спасибо за все!
     
    Root нравится это.
  18. Root

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

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

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