< title>从< head>R中的URL获取

cvxl0en2  于 2023-06-27  发布在  其他
关注(0)|答案(2)|浏览(96)

从任何URL,我想得到标签内的文本在其头。例如,在下面的截图中,文本“JavaScript -获取给定URL的网页标题- Stack Overflow”是我想要提取的内容。

我一直在尝试用httr获取标题,但它似乎没有标题:

library(httr)
url_head <- HEAD(url = "https://stackoverflow.com/questions/10940241/getting-the-title-of-a-web-page-given-the-url"))
url_head

给予

Response [https://stackoverflow.com/questions/10940241/getting-the-title-of-a-web-page-given-the-url]
  Date: 2023-06-22 10:01
  Status: 200
  Content-Type: text/html; charset=utf-8
<EMPTY BODY>

也试过

headers(url_head)

但也没有

mqkwyuun

mqkwyuun1#

为此,我会使用{rvest}包。
我们读取URL,得到CSS选择器“head > title”的元素,它读到“get the title tag inside the head tag”,然后我们使用html_text()提取文本。

library(rvest)

url <- "https://stackoverflow.com/questions/10940241/getting-the-title-of-a-web-page-given-the-url"
so_page <- read_html(url)

so_page |> 
  html_element("head > title") |>
  html_text()
#> [1] "javascript - Getting the title of a web page given the URL - Stack Overflow"

创建于2023-06-22带有reprex v2.0.2

fnatzsnv

fnatzsnv2#

您可以使用rvest包,它提供了强大的Web抓取工具:

library(rvest)

url <- "https://example.com"  # Replace with your desired URL

html <- read_html(url)

title <- html %>% html_node("head title") %>% html_text()

确保安装了rvest包。

相关问题