r - 从字符串中删除 HTML 标记
问题描述
我正在尝试使用从 HTML 标记中提取文本数据rvest
。
数据:
[vc_row css_animation="" row_type="row" use_row_as_full_screen_section="no" type="full_width" angled_section="no" text_align="left" background_image_as_pattern="without_pattern"][vc_column][vc_column_text]\n\\n<h6 class="button" style="padding: 0px 42%;">Description</h6>\n\\n<ol>\n\\n \t<li>Ideal for : Women</li>\n\\n \t<li>Package Contents : 1 Pcs</li>\n\\n \t<li>Fit Type : Regular, Relaxed, Classic and Slim Fit.</li>\n\\n \t<li>Care Instructions : Machine Wash and Normal Wash.</li>\n\\n \t<li>Occasion : Lough, Smart, Dressy, Business, Casual and Formal.</li>\n\\n \t<li>Sleeve Type : Short sleeves, 3/4th Sleeves, Full Sleeves ,Kimono Sleeves and Off Shoulder.</li>\n\\n \t<li>Browse our Brand In Love for more choices of Shrugs , Tops and T shirt and Western wear Collections.</li>\n\\n \t<li>Care Instructions : Ensure washing the tee in cold water, don't iron directly on the print and don't dry in direct sunlight.</li>\n\\n</ol>\n\\n<img class="alignnone wp-image-858" src="https://justelite.in/wp-content/uploads/2020/06/art-size.jpg" alt="" />\n\\n<h6 class="button" style="padding: 0px 42%;">Reviews</h6>\n\\n[/vc_column_text][/vc_column][/vc_row]
我所做的是:
html_text(read_html(as.character(data)))
我仍然得到vc_row css_animation
和其他一些未删除的标签。
dput
数据:
structure(2L, .Label = c("", "[vc_row css_animation=\"\" row_type=\"row\" use_row_as_full_screen_section=\"no\" type=\"full_width\" angled_section=\"no\" text_align=\"left\" background_image_as_pattern=\"without_pattern\"][vc_column][vc_column_text]\n\\n<h6 class=\"button\" style=\"padding: 0px 42%;\">Description</h6>\n\\n<ol>\n\\n \t<li>Ideal for : Women</li>\n\\n \t<li>Package Contents : 1 Pcs</li>\n\\n \t<li>Fit Type : Regular, Relaxed, Classic and Slim Fit.</li>\n\\n \t<li>Care Instructions : Machine Wash and Normal Wash.</li>\n\\n \t<li>Occasion : Lough, Smart, Dressy, Business, Casual and Formal.</li>\n\\n \t<li>Sleeve Type : Short sleeves, 3/4th Sleeves, Full Sleeves ,Kimono Sleeves and Off Shoulder.</li>\n\\n \t<li>Browse our Brand In Love for more choices of Shrugs , Tops and T shirt and Western wear Collections.</li>\n\\n \t<li>Care Instructions : Ensure washing the tee in cold water, don't iron directly on the print and don't dry in direct sunlight.</li>\n\\n</ol>\n\\n<img class=\"alignnone wp-image-858\" src=\"https://justelite.in/wp-content/uploads/2020/06/art-size.jpg\" alt=\"\" />\n\\n<h6 class=\"button\" style=\"padding: 0px 42%;\">Reviews</h6>\n\\n[/vc_column_text][/vc_column][/vc_row]"
), class = "factor")
解决方案
据我所知,您所拥有的没有适当的 html 标签,因为这些标签通常由“<”和“>”(例如,< h1 >
)划分。你的被包围了[ h1 ]
。调整上面链接的功能,您可以执行以下操作:
s <- structure(2L, .Label = c("", "[vc_row css_animation=\"\" row_type=\"row\" use_row_as_full_screen_section=\"no\" type=\"full_width\" angled_section=\"no\" text_align=\"left\" background_image_as_pattern=\"without_pattern\"][vc_column][vc_column_text]\n\\n<h6 class=\"button\" style=\"padding: 0px 42%;\">Description</h6>\n\\n<ol>\n\\n \t<li>Ideal for : Women</li>\n\\n \t<li>Package Contents : 1 Pcs</li>\n\\n \t<li>Fit Type : Regular, Relaxed, Classic and Slim Fit.</li>\n\\n \t<li>Care Instructions : Machine Wash and Normal Wash.</li>\n\\n \t<li>Occasion : Lough, Smart, Dressy, Business, Casual and Formal.</li>\n\\n \t<li>Sleeve Type : Short sleeves, 3/4th Sleeves, Full Sleeves ,Kimono Sleeves and Off Shoulder.</li>\n\\n \t<li>Browse our Brand In Love for more choices of Shrugs , Tops and T shirt and Western wear Collections.</li>\n\\n \t<li>Care Instructions : Ensure washing the tee in cold water, don't iron directly on the print and don't dry in direct sunlight.</li>\n\\n</ol>\n\\n<img class=\"alignnone wp-image-858\" src=\"https://justelite.in/wp-content/uploads/2020/06/art-size.jpg\" alt=\"\" />\n\\n<h6 class=\"button\" style=\"padding: 0px 42%;\">Reviews</h6>\n\\n[/vc_column_text][/vc_column][/vc_row]"
), class = "factor")
cleanFun <- function(htmlString) {
return(gsub("<.*?>|\\[.*?\\]", "", htmlString))
}
cleanFun(s)
#> [1] "\n\\nDescription\n\\n\n\\n \tIdeal for : Women\n\\n \tPackage Contents : 1 Pcs\n\\n \tFit Type : Regular, Relaxed, Classic and Slim Fit.\n\\n \tCare Instructions : Machine Wash and Normal Wash.\n\\n \tOccasion : Lough, Smart, Dressy, Business, Casual and Formal.\n\\n \tSleeve Type : Short sleeves, 3/4th Sleeves, Full Sleeves ,Kimono Sleeves and Off Shoulder.\n\\n \tBrowse our Brand In Love for more choices of Shrugs , Tops and T shirt and Western wear Collections.\n\\n \tCare Instructions : Ensure washing the tee in cold water, don't iron directly on the print and don't dry in direct sunlight.\n\\n\n\\n\n\\nReviews\n\\n"
由reprex 包(v0.3.0)于 2020 年 9 月 16 日创建
推荐阅读
- java - 未找到依赖项 'org.springframework.boot:spring-boot-starter-web:2.3.0.RELEASE'
- xamarin.forms - Fody System.OutOfMemoryException
- python - 如何在django中将多个参数传递给url
- sed - 发送 ctrl-c 中断 kubectl+sed 输出,可靠
- find - 使用日期作为文件名并输出为数组查找文件范围
- python - 我们如何检测熊猫数据帧中的不一致?
- reactjs - 如何更改 rsuite DateRangePicker 中菜单的位置?
- google-cloud-platform - Migrate for Compute Engine 不可用
- excel - 用VBA对Excel图表的数据表进行排序
- json - Web2py 将 CSV 文件作为服务参数传递