我想解析包含这些信息的HTML页面:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Tajemnica Oscara Pistoriusa - Książki - WP.PL</title>
<meta name="description" content="Wieczorem, 13 lutego 2013 roku ona pisze dla niego kartkę na walentynki: <b>"Dziś jest dobry dzień, by powiedzieć, że Cię kocham".</b> Zanim on odczyta tę wiadomość, ona od kilku godzin nie..." />
<meta name="keywords" content="ksiazki, książka, literatura, czytelnik" />
<meta name="language" content="pl" />
<meta name="author" content="Grupa Wirtualna Polska" />
<meta name="robots" content="index,follow" />
我在R中使用rvest
package。当我使用此代码时,使用此选择器:"meta"
library(rvest)
content <- html("http://ksiazki.wp.pl/gid,17325376,tytul,Tajemnica-Oscara-Pistoriusa,galeria.html?ticaid=1147a0&_ticrsn=3")
nodesS <- html_nodes(content, "meta")
我收到了所有metas的列表,但我只对一个特定的感兴趣。
我应该使用哪个选择器来下载content
中的那些信息:
<meta name="keywords" content="ksiazki, książka, literatura, czytelnik" />
修改的:
谁能知道如何正确设置encoding
参数?
我收到了错误的编码,同时指定它:
> content <- html("http://ksiazki.wp.pl/gid,17325376,tytul,Tajemnica-Oscara-Pistoriusa,galeria.html?ticaid=1147a0&_ticrsn=3",
+ encoding = "UTF-8" )
>
> nodesS <- html_nodes(content, "meta[name=keywords]")
> html_attrs(nodesS)[[1]][2]
content
"ksiazki, ksiÄ…ĹĽka, literatura, czytelnik"
编辑:
我在hadley的github项目的readme.me概述中找到了函数guess_encoding()
和repair_encoding()
https://github.com/hadley/rvest
答案 0 :(得分:5)
更改您的CSS选择器以包含attribute value selector:
nodesS <- html_nodes(content, "meta[name=keywords]")
然后,您可以通过添加:
来仅提取content
属性
html_nodes(content, "meta[name=keywords]") %>% html_attr("content")
# [1] "ksiazki, książka, literatura, czytelnik"