使用R语言从网页上提取所有的URLs
在这篇文章中,我们将学习如何使用R编程语言从网页中提取所有的URLs。
为了提取URLs,我们将使用 httr 和 XML 库。我们将使用 httr 包来进行HTTP请求XML和 XML 来使用xml标签识别URLs。
- httr库用于在R语言中进行HTTP请求,因为它为curl包提供了一个封装器。
- XML库用于处理XML文件和XML标签。
安装
install.packages(“httr”)
install.packages(“XML”)
在安装完所需的包后,我们需要导入 httr 和 XML 库,并创建一个变量并存储网站的URL。现在我们将使用 httr 包的 GET() 来进行 HTTP 请求,所以我们有原始数据,我们需要将其转换为 HTML 格式,这可以通过使用 htmlParse() 来完成。
我们已经成功地搜刮了HTML数据,但我们只需要URL,所以为了搜刮URL,我们用xpathSApply()并将HTML数据传递给它,我们现在还没有完成,我们必须将XML标签传递给它,这样我们就可以得到与该标签相关的一切。对于URL,我们将使用 “href “标签,它用于声明URL。
注意: 如果你已经安装过一次软件包,就不需要使用install.packages()。
分步实现
第1步: 安装库。
第2步: 导入 库。
第3步: 发出HTTP请求。
在这一步,我们将在GET()中传递我们的URL来请求网站数据,并将返回的数据存储在资源变量中。
第4步: 将网站数据解析为HTML格式。
在这一步,我们使用htmlparse()将数据解析为HTML。
第5步: 识别 URLs并打印。
在这一步,我们用xpathSApply()来定位URLs。
我们知道 <a>
标签是用来定义URL的,它被存储在 href 属性中。
<a href="url"></a>
所以xpathSApply()
会找到所有的<a>
标签 ,并刮除存储在 href 属性中的链接。然后我们将把所有的URL存储在一个变量中并打印出来。
例子
输出