Нужна помощь по xPath. Парсим листинги которые на рекламе ETSY

devas111

Client
Регистрация
28.01.2012
Сообщения
201
Благодарностей
9
Баллы
18
Помогите составить запрос с помощью xPath чтобы спарсить ID листинга (или URL) + картинку (ссылку на листинг), но только те что на рекламе.
Этим запросом нахожу всех кто на рекламе (Ad by ...)
Код:
//p[@class='wt-text-caption wt-text-truncate wt-text-gray wt-mb-xs-1']/span
Но как вернутся к предкам и спарсить линки или картинку выделенную в коде на картинке серым? (типа - xttps://i.etsystatic.com/)
С этого сайта - etsy.com

78240
 

Spelin

Client
Регистрация
24.09.2019
Сообщения
446
Благодарностей
121
Баллы
43
//p[@class='wt-text-caption wt-text-truncate wt-text-gray wt-mb-xs-1']/parent::div/parent::div/parent::div/parent::a

решение корявенькое, если пути поменяются то слетит

Ап
//p[@class='wt-text-caption wt-text-truncate wt-text-gray wt-mb-xs-1']/ancestor::a
вот это получше


Вот еще вариант:
//p[contains(text(),'Реклама')]/ancestor::a
 
Последнее редактирование:

Spelin

Client
Регистрация
24.09.2019
Сообщения
446
Благодарностей
121
Баллы
43
Я бы оставил последний)
 

devas111

Client
Регистрация
28.01.2012
Сообщения
201
Благодарностей
9
Баллы
18
СПСБ. Второй парсит весь код после оператора, потом приходится парсить только картинку. Ещё не додумал как в проджекте это сделать.
 

devas111

Client
Регистрация
28.01.2012
Сообщения
201
Благодарностей
9
Баллы
18
Настроил. Сенкс Spelin
 

Spelin

Client
Регистрация
24.09.2019
Сообщения
446
Благодарностей
121
Баллы
43
СПСБ. Второй парсит весь код после оператора, потом приходится парсить только картинку. Ещё не додумал как в проджекте это сделать.
конечно он и будет весь элемент парсить, атрибут настраивается в запросе
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)