有人可以帮我提取 From 之后的测试,我想提取发件人姓名。它位于em标签的正上方。我正在使用python BeautifulSoup包。
以下是指向网页的链接:http://seclists.org/fulldisclosure/2016/Jan/0
我能够成功提取电子邮件标题,因为它是在标签中。 html页面中没有其他div或类。
这是我尝试过的
url <- "http://seclists.org/fulldisclosure/2016/Jan/0"
doc <- htmlTreeParse(url, useInternalNodes = T, trim = T, addAttributeNamespaces = T, encoding = "utf-8")
pre_text1 <- unlist(xpathSApply(doc, "//em",xmlValue))
答案 0 :(得分:1)
您可以使用以下xpath
require(rvest)
doc <- read_html("http://seclists.org/fulldisclosure/2016/Jan/0")
doc %>%
html_node(xpath = "/html/body/table[2]//tr[1]/td[2]/table//tr/td/text()[6]") %>%
html_text
结果:: Uğur Cihan KOÇ <u.cihan.koc () gmail com>
我是怎么到那儿的? 从Chrome开始 - &gt;右键单击文本元素 - &gt;复制 - &gt;复制XPath。 不知何故,没有“复制选择器”。所以我猜你不能通过纯粹的css选择器来访问这个元素。
此xpath如下所示:
/html/body/table[2]/tbody/tr[1]/td[2]/table/tbody/tr/td/text()[1]
Rvest不会返回此xpath的任何元素。某种程度上tbody
- 部分未被识别(不知道为什么)。删除并删除尾随[1]
/html/body/table[2]//tr[1]/td[2]/table//tr/td/text()
为您提供所需的结果。然后你可以在xpath中选择第6个元素,方法是添加[6]
,或者在 R 中过滤。