이 문제에 대한 좋은 예가 있습니다. 다른 옵션을 사용하여 HTML 데이터를 추출하십시오.
https://www.nest.co.uk/product/anglepoise-original-1227-giant-outdoor-floor-lamp
이
은 두 가지 옵션이있는 제품입니다. 하나는 '광택 마감'유형이고 다른 하나는 '새틴 마침'유형입니다.두 가지 유형으로 색상을 선택할 수 있습니다.
- 광택 마감 - 비둘기 그레이/제트 블랙/리넨 화이트/알파인 화이트/감귤류 노란색 ...
- 새틴 마감 - 오리 계란 블루/꽃 핑크/리넨 화이트
HTML은 다음과 같습니다.
<select title="Select an option" name="product-option"
id="product-option-selector" class="product-option-selector">
<option value="198841">Gloss Finish</option>
<option value="198857">Satin Finish</option>
</select>
옵션을 선택하면 색상에 대한 세부 정보가 있습니다.
이 제품과 다른 제품은 하나의 제품 이름에만 옵션이 있습니다. 따라서 행 수에는 문제가 없습니다. 아래와 같이 옵션 데이터를 추출하는 데 사용되었습니다.
- 추출 옵션
html_nodes(xpath='//*[@id="product-option-selector"]/option')%>%
html_text()
추출 이름
html_nodes(".product-options")%>%
html_nodes("[itemprop=name]")%>%
html_attr("content")
하지만 이것으로 행 수에 차이가 있으므로 결과는 아래와 같습니다.
[Options] [Colors]
1 Gloss Finish Dove Gray
2 Gloss Finish Jet Black
3 Gloss Finish Linen White
4 Gloss Finish Alpine White
5 Gloss Finish Citrus Yellow
6 Satin Finish Duck Egg Blue
7 Satin Finish Blossom Pink
[Options] [Colors]
1 Gloss Finish Dove Gray
2 Satin Finish Jet Black
3 NA Linen White
4 NA Alpine White
5 NA Citrus Yellow
하지만이 같은 결과를 원하는, 나는 내가 할 수있는 모든 것을 시도했다. 필사적으로 당신의 도움이 필요합니다. 이러한 아이디어가 있습니까?
죄송 데 도움이! 내가 당신의 코드를 확인한 후에 당신이 완전히 천재라는 것을 깨달았습니다! 나는 그렇게 생각하지 않아. –