Страницы: 1
RSS
Парсинг с сайта, Импорт данных с сайта
 
Всем привет уважаемые знатоки! Помогите, пожалуйста, разобраться с парсингом  :( Я парсил данные с сайта https://www.avionio.com/ru/airport/muc/departures
Всё прекрасно работало, но потом почему то некоторые ячейки с вложенной IMPORTXML формулой перестали прогружать инфу, но не все правда ячейки, а только некоторые.
С сайта необходимо подтягивать информацию и прилёте/вылете рейсов. У меня таблица разбита на соответствующие колонки: Время/Дата/Назначение и отправление/Рейс/Авиакомпания/Статус рейса.
Формула для парсинга следующая: =IMPORTXML("Ссылка","запрос_Xpath")
Пример:
Код
IMPORTXML("https://www.avionio.com/ru/airport/muc/departures";"//td[@class='tt-d']")
Формула вроде простая, но вот ячейки с временем и статусом перестали транслировать инфу с сайта, хотя до этого всё работало. Можете, пожалуйста, подсказать с чем это может быть связано?
Заранее благодарю!

Формула для столбца с временем отправления:
Код
IMPORTXML("https://www.avionio.com/ru/airport/muc/departures";"//td[@class='tt-t si scheduled']")
И соответственно прибытия:
Код
IMPORTXML("https://www.avionio.com/ru/airport/muc/arrivals";"//td[@class='tt-t si scheduled']")
Работает всё через выдающий список (Отправление и Прибытие)
Код
=ЕСЛИ(B7="Отправление";IMPORTXML("https://www.avionio.com/ru/airport/muc/departures";"//td[@class='tt-t si scheduled']");ЕСЛИ(B7="Прибытие";IMPORTXML("https://www.avionio.com/ru/airport/muc/arrivals";"//td[@class='tt-t si scheduled']");""))
Скрин приложил.  
 
попробуйте для каждого времени
tt-t si estimated
tt-s sc estimated
 
Попробовал, но, к сожалению, не находит данные(
В столбец со временем добавил tt-t si estimated
В столбец со статусом добавил tt-s sc estimated
Получилась формула следующая:
Код
=ЕСЛИ(B7="Отправление";IMPORTXML(B10;"//td[@class='tt-t si estimated']");ЕСЛИ(B7="Прибытие";IMPORTXML(B11;"//td[@class='tt-t si estimated']");""))
и
Код
=ЕСЛИ(B7="Отправление";IMPORTXML("https://www.avionio.com/ru/airport/muc/departures";"//td[@class='tt-s sc estimated']");ЕСЛИ(B7="Прибытие";IMPORTXML("https://www.avionio.com/ru/airport/muc/arrivals";"//td[@class='tt-s sc estimated']");""))
Очень странно, что другие столбцы по той же самой формуле работают, только запрос Xpath отличается. Вчера почему то перестали ссылки работать, до этого всё подгружалось и колонка со статусом рейсов и со временем прибытия/отправления...
Может что на сайте изменилось, может быть такое  :(  
 
забыл скрин добавить
 
Цитата
Макс П написал:
не находит данные
 
Спасибо большое! Я только сейчас обратил внимание и понял почему формула в этих столбцах перестала работать, оказывается в запросе xpath присутствовал пробел 'tt-s sc estimated '
А до этого его видимо не было на странице разработчика, поэтому работало всё.
А можете подсказать как можно добавить несколько Xpath запросов в формулу? Чтобы в столбец где Статус рейсов тянул данные не только "Ожидается", а другие данные тоже тянул. "Запланирован" / "Вылетел" и т д.  
 
может быть так нужно?
=IMPORTXML("https://www.avionio.com/ru/airport/muc/departures";"//*[@id='content']/table/tbody/*")
 
Спасибо, кстати вариант вами предложенный очень даже не плохой :)
Получается вся таблица тянется с сайта, единственно немного неудобно там, где пустые ячейки сворачивать и разворачивать, но это уже мелочи, как говорится.

Я вообще имел ввиду 'значение' которое указывается после @class или @id можно ли несколько таких значений указать в запросе Xpath...
На просторах интернета ничего подобного не нашёл, поэтому уточнил)
То есть, чтобы в столбец со статусом рейсов тянулись все возможные статусы (Ожидается/Запланирован/Вылетел/Прибыл), а не только те, которые указываются в значении запроса Xpath.  
 
Да можно конечно же, почитайте подробнее про xpath, это довольно интересная тема.
Также как и css селекторы :)
https://flukeout.github.io/
Страницы: 1
Наверх