Я пытаюсь вытащить имя, вес, и акций, принадлежащих таблице на вкладке Холдингс этой страницы: https://www.spdrs.com/product/fund.seam?ticker=DIAКак разобрать конкретную таблицу с помощью Nokogiri?
# get table headers
headers = []
page.xpath('//*/table/thead/tr/th').each do |th|
headers << th.text
end
# get table rows
rows = []
page.xpath('//*/table/tbody/tr').each_with_index do |row, i|
rows[i] = {}
row.xpath('td').each_with_index do |td, j|
rows[i][headers[j]] = td.text
end
end
puts page.xpath("//table//tr//td[1]/text()")
p rows
Это код, я прямо сейчас, и я не совсем уверен, как сделайте xpath. Вызов puts page.xpath("//table//tr//td[1]/text()")
возвращает все метки для всех таблиц, но мне нужны только те, у которых есть названия компаний. Как я могу выбрать только данные конкретной таблицы и как переписать цикл, чтобы извлечь из этого?
Добро пожаловать на переполнение стека. Пожалуйста, прочитайте «[mcve]». Вам нужно предоставить вход _minimal_, который демонстрирует проблему. Это означает, что HTML, с которым вы работаете, должен быть уменьшен до минимума, а затем добавлен в вопрос. Не ожидайте, что мы напишем код, который извлекает эту страницу, или что мы уменьшим его для вас, чтобы помочь вам. Вы должны помочь нам помочь вам. –