【问题标题】:Extract table using rvest from website使用 rvest 从网站提取表
【发布时间】:2023-03-16 15:36:01
【问题描述】:

我正在尝试使用 rvest 从表中提取数据。以下是我正在使用的代码

mcurl<-read_html("http://www.moneycontrol.com/financials/tataconsultancyservices/balance-sheetVI/TCS#TCS")

使用以下代码,我只能获取表头而不是整个表的内容。

html_table(html_nodes(mcurl, "table.table4")[2],header=FALSE,fill=TRUE)
[[1]]
                                                  X1                                                 X2
1 Balance Sheet of Tata Consultancy Services ------------------- in Rs. Cr. -------------------


html_table(html_nodes(mcurl, "table")[4],header=FALSE,fill=TRUE)
[[1]]
                                          X1                                                 X2
1 Balance Sheet of Tata Consultancy Services ------------------- in Rs. Cr. -------------------

【问题讨论】:

    标签: r rvest


    【解决方案1】:

    我不知道为什么rvest 与这个问题斗争,但你可以使用XML 包中的readHTMLTable 来做同样的事情......

    library(XML)
    tables <- readHTMLTable("http://www.moneycontrol.com/financials/tataconsultancyservices/balance-sheetVI/TCS#TCS")
    
    head(tables[[5]],10)
                                     Mar 17    Mar 16    Mar 15    Mar 14    Mar 13
    1                                  <NA>      <NA>      <NA>      <NA>      <NA>
    2                               12 mths   12 mths   12 mths   12 mths   12 mths
    3                                  <NA>      <NA>      <NA>      <NA>      <NA>
    4    EQUITIES AND LIABILITIES                                              <NA>
    5         SHAREHOLDER'S FUNDS                                              <NA>
    6        Equity Share Capital    197.00    197.04    195.87    195.87    195.72
    7    Preference Share Capital      0.00      0.00      0.00      0.00    100.00
    8         Total Share Capital    197.00    197.04    195.87    195.87    295.72
    9        Reserves and Surplus 77,825.00 58,669.82 45,220.57 43,856.01 32,266.53
    10 Total Reserves and Surplus 77,825.00 58,669.82 45,220.57 43,856.01 32,266.53
    

    【讨论】:

    • 感谢您提及 readHTMLTable。我试图实现的不仅仅是从本页显示的表格中提取数据。表格“以前的年份”右侧有一个链接。单击它会导致另一组数据,但我也想使用 html_session 提取相同的 URL,因此我想使用 rvest 来提取数据,但如果我使用 url 使用 readHTMLTable 将面临约束。
    猜你喜欢
    • 2017-07-20
    • 1970-01-01
    • 1970-01-01
    • 2020-01-30
    • 1970-01-01
    • 1970-01-01
    • 2021-03-31
    • 1970-01-01
    • 2021-04-19
    相关资源
    最近更新 更多