Я хотел бы почистить веб-сайт реакции, на котором есть продукты с названиями и описаниями.Структура html выглядит следующим образом:
<h6 class="menu-index-page__item-title" data-reactid=".5c2v.$menuItemContent.0">
<span data-reactid=".5c2v.$menuItemContent.0.1">Product name</span>
</h6>
<p class="menu-index-page__item-desc" data-reactid=".5c2v.$menuItemContent.1">
<span data-reactid=".5c2v.$menuItemContent.1.0">
<span data-reactid=".5c2v.$menuItemContent.1.0.0">
<span data-reactid=".5c2v.$menuItemContent.1.0.0.0:$0">Description line 1</span>
<br data-reactid=".5c2v.$menuItemContent.1.0.0.0:$0br">
<span data-reactid=".5c2v.$menuItemContent.1.0.0.$1">
<span data-reactid=".5c2v.$menuItemContent.1.0.0.$1.0">
<span data-reactid=".5c2v.$menuItemContent.1.0.0.$1.0.0">Description line 2</span>
<span data-reactid=".5c2v.$menuItemContent.1.0.0.$1.0.1">…</span>
</span>
</span>
</span>
</p>
Если в описании больше или меньше строк, количество тегов span будет меняться, поэтому поиск по xpath будет недействительным.
Единственное, чтовозвращается для каждого продукта на каждой странице: .$menuItemContent.1.0.0.0:$0
для первой строки описания и .$menuItemContent.1.0.0.$1.0.0
для второй строки описания.
Могу ли я использовать, например, регулярное выражение, чтобы получить только эту часть изатрибут data-reactid
?
В данный момент я использую Нокогири.
Спасибо