Как парсить Yandex Map ?

Discussion in 'Решения по парсингу популярных сайтов' started by AlexandrSorokin, Apr 3, 2020.

Tags:
  1. AlexandrSorokin

    AlexandrSorokin Active Member Пользователи

    Joined:
    Nov 27, 2018
    Messages:
    71
    Город:
    Пермь
    Привет!
    Помогите, пожалуйста, одолеть YandexMap

    Объекты на карте выводятся списком, который надо прокручивать.

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

    Проблема 1
    Когда элемент не будет найден (например, из-за долгого времени загрузки), прокрутка прервется.
    Проблема 2
    Рождается из-за первой. Если указывать прокрутку [INT1]+10, а на странице случайно загрузится количество, не кратное 10 (например 9), то прокрутка прервется. Вроде как решается с помощью уменьшения шага [INT1]+1, но тогда скорость надо увеличивать и элементы не успевают загружаться.


    Безуспешные попытки -

    Обычный набор для прокрутки страницы
    Code:
    [INT1]=0
    [CLABEL]
    [WAIT]:1000
    [INT1]+1
    [CLICK][classname][N][INT1][/N][FULL][RETURN][ET_SCROLL]:search-business-snippet-view__title _with-badge
    Ошибка - элемент не найден, потому что не успел загрузиться
    [​IMG]



    Вставляю Ожидание скриптов
    Code:
    [INT1]=0
    [CLABEL]
    [WAIT]:100
    [INT1]+1
    [WAITFORSCRIPTS]:80|29
    [CLICK][classname][N][INT1][/N][FULL][RETURN][ET_SCROLL]:search-business-snippet-view__title _with-badge
    
    Ошибка - элемент не найден, потому что не успел загрузиться
    [​IMG]



    Использую Условие, если случилась ошибка, тогда подождать еще
    Code:
    [INT1]=0
    [CLABEL]
    [WAIT]:100
    [INT1]+1
    [CLICK][classname][N][INT1][/N][FULL][RETURN][ET_SCROLL]:search-business-snippet-view__title _with-badge
    [IFNOTCLICKED]
    [WAIT]:3000
    [RETURN]
    [/IFNOTCLICKED]
    Ошибка - элемент не найден, потому что не успел загрузиться
    [​IMG]
     

    Attached Files:

    Last edited: Apr 9, 2020
  2. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    Здравствуйте.

    Попробуйте после всех событий вставить еще один "клик" и проверку клика:
    Code:
    ...
    [CLICK][classname][N][INT1][/N][FULL][RETURN][ET_SCROLL]:search-business-snippet-view__title _with-badge
    [IFNOTCLICKED]
    [WAIT]:3000
    [RETURN]
    [/IFNOTCLICKED]
     
    kagorec and AlexandrSorokin like this.
  3. AlexandrSorokin

    AlexandrSorokin Active Member Пользователи

    Joined:
    Nov 27, 2018
    Messages:
    71
    Город:
    Пермь
    Не получается(
     
    Last edited: Apr 4, 2020
    Root likes this.
  4. AlexandrSorokin

    AlexandrSorokin Active Member Пользователи

    Joined:
    Nov 27, 2018
    Messages:
    71
    Город:
    Пермь
    Сделал с запасом третий клик.
    Но все равно не понятно на что натыкается и прерывает работу.
    С интернетом все в порядке, 100мбит.

    Code:
    [INT1]=0
    [CLABEL]
    [WAIT]:500
    [INT1]+1
    [CLICK][classname][N][INT1][/N][FULL][RETURN][ET_SCROLL]:search-business-snippet-view__title _with-badge
    [IFNOTCLICKED]
    [WAIT]:2000
    [RETURN]
    [/IFNOTCLICKED]
    [CLICK][classname][N][INT1][/N][FULL][RETURN][ET_SCROLL]:search-business-snippet-view__title _with-badge
    [IFNOTCLICKED]
    [WAIT]:2000
    [RETURN]
    [/IFNOTCLICKED]
    [CLICK][classname][N][INT1][/N][FULL][RETURN][ET_SCROLL]:search-business-snippet-view__title _with-badge
    [​IMG]
     

    Attached Files:

  5. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    Сейчас пока не до этого вопроса.

    В течение 3-5 дней, постараюсь сделать решение.
     
    AlexandrSorokin likes this.
  6. AlexandrSorokin

    AlexandrSorokin Active Member Пользователи

    Joined:
    Nov 27, 2018
    Messages:
    71
    Город:
    Пермь
    Пока заняты?

    Если кто свободен, подскажите, пожалуйста, что делать
     
  7. AlexandrSorokin

    AlexandrSorokin Active Member Пользователи

    Joined:
    Nov 27, 2018
    Messages:
    71
    Город:
    Пермь
    Ребят, давайте разберемся, как парсить Yandex Map.
    Почему ошибку выдает при прокрутке страницы, даже если еще результаты подгружаются?
     
  8. Denorion

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

    Joined:
    Apr 7, 2020
    Messages:
    52
    Город:
    Москва
    добрый день! Не уверен, что такой способ будет с длинными страницами работать, но с короткими, такими, как ДОДО пицца, работает. В аттаче.
     

    Attached Files:

  9. AlexandrSorokin

    AlexandrSorokin Active Member Пользователи

    Joined:
    Nov 27, 2018
    Messages:
    71
    Город:
    Пермь
    Спасибо за участие!
    К сожалению, скрипт зациклен.
    Когда страница доходит до конца - продолжает перебор условий.
    Также иногда останавливается прокрутка.

    [​IMG]
     

    Attached Files:

    Last edited: Apr 18, 2020
  10. Denorion

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

    Joined:
    Apr 7, 2020
    Messages:
    52
    Город:
    Москва
    Добрый вечер.
    Можно сделать проверку [IFAQUERYINITIATED] (по этой ссылке Ссылки недоступны для гостей посмотрите видео под спойлером Прокликивание цветов товаров в Яндекс маркете). Но это только для браузера Хрониум. Я не знаю, есть он у вас в приложении или только IE у вас.

    В проекте привязка к коду <span>Добавьте </span> идет - если этот код появляется на странице скрипт останавливается и возвращает текущий код страницы в CD. Возможно нужно к другому коду подцепиться.
    Ссылки недоступны для гостей
     
  11. Denorion

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

    Joined:
    Apr 7, 2020
    Messages:
    52
    Город:
    Москва
    Я сейчас гифку смотрел еще раз. Вы мышкой водите и вероятно убрали фокус внимания с области прокрутки страницы. Если не трогать ничего - все должно прокручиваться. Я не знаю, как сделать фокус на нужную область(та, где прокручивается список) без открытия браузера. Мало опыта. Пробуйте)
     
  12. AlexandrSorokin

    AlexandrSorokin Active Member Пользователи

    Joined:
    Nov 27, 2018
    Messages:
    71
    Город:
    Пермь
    Спасибо за участие!

    Это тоже проблема, так как без фокуса прокрутка в цикле, не останавливается.
    И фокус, к сожалению, не возможно держать всегда(

    Ожидаю ответ Сергея, может есть какие рекомендации разработчика..
     
  13. kagorec

    kagorec Администратор Staff Member Администратор

    Joined:
    Jan 3, 2011
    Messages:
    4,442
    Location:
    Latvia
    Фокус (первая строка) продублируйте после [REPEAT]
     
  14. AlexandrSorokin

    AlexandrSorokin Active Member Пользователи

    Joined:
    Nov 27, 2018
    Messages:
    71
    Город:
    Пермь
    Спасибо за участие.

    К сожалению, даже при фокусе идет зацикливание.
    Похоже, яндекс карты не парсятся..

    [​IMG]
     

    Attached Files:

    • GIF.gif
      GIF.gif
      File size:
      3 MB
      Views:
      249
  15. kagorec

    kagorec Администратор Staff Member Администратор

    Joined:
    Jan 3, 2011
    Messages:
    4,442
    Location:
    Latvia
    Так элемент появляется "Добавьте" или когда появляется то цикл не заканчивается?
     
  16. Denorion

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

    Joined:
    Apr 7, 2020
    Messages:
    52
    Город:
    Москва
    Добрый день! Вроде все работает. Если никуда не кликать, то все прокручивается, до момента когда <span>Добавьте </span> не появится на странице. Как переместить фокус без открытия браузера, я не знаю. Возможно кто то подскажет?
     

    Attached Files:

    AlexandrSorokin likes this.
  17. heagar

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

    Joined:
    Jan 18, 2022
    Messages:
    3
    Так и чем всё закончилось? Получилось?
     
  18. AlexandrSorokin

    AlexandrSorokin Active Member Пользователи

    Joined:
    Nov 27, 2018
    Messages:
    71
    Город:
    Пермь
    Пока не нашел решение.
    Пробую по-тихоньку разные варианты =)
    Результат выложу здесь, или буду благодарен за любую помощь и участие
     
  19. heagar

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

    Joined:
    Jan 18, 2022
    Messages:
    3
    Вы хотите собрать весь список выдачи организаций? И если организаций например несколько тысяч, то вопрос в том, как сделать так, чтобы они все выводились в списке не зависая в какой то момент. Вопрос в том, как догрузить все организации в списке выдаче. Я правильно понял поставленную Вами задачу?
     
  20. Root

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

    Joined:
    Mar 10, 2010
    Messages:
    14,818
    Город:
    Барнаул
    https://forum.sbfactory.ru/threads/kak-sobrat-otzyvy-s-jandeks-kart.9950/#post-57191
     
    AlexandrSorokin likes this.

Share This Page