Excel Vba - как проверить, есть ли дочерний элемент HTML или нет

0

Я делаю файл excel, чтобы получить цену продукта с сайта и сравнить. Пока мне удалось разобрать имя и цену продукта. но проблема возникает, когда продукт продается, тогда у него был другой элемент, как показано ниже. 1 нормальный 2 продается 1.

<div class="price">
   <span>$87</span>
</div>

2

<div class="price">
   <del>100</del>
   <ins>80</ins>
</div>

Я даю

Set hPrice = hPord(r).getElementsByClassName("price")  
for loop    
ActiveSheet.Range("H6").Offset(r, 0).Value = hPrice(0).innerText

эта работа отлично подходит для нормальной цены продукта, но в продаже продукт возвращается "100 80", я пытаюсь использовать

If Not hPrice(0).getElementsByTagName("ins") Then    

это дает ошибку, когда "ins" нет, pleae дайте мне знать, как проверить дочерний тег там или нет, или у вас есть лучшая альтернатива

благодаря

Теги:
excel-vba
excel

2 ответа

0

Попробуйте ниже образцы

If Not hPrice.getElementsByTagName("ins")(0) Then

ИЛИ

If Not hPrice.getElementsByTagName("ins") Then

0

Вы забыли добавить индекс <ins> в свою строку. Это может быть примерно так:

 If Not hPrice(0).getElementsByTagName("ins")(0) Then 

другими словами, чтобы получить значение цены продукта, которое необходимо для этой строки:

hPrice(0).getElementsByTagName("ins")(0).innerText

Ещё вопросы

Сообщество Overcoder
Наверх
Меню