multiple を持つ HTML テーブルがあり<tbody>
、これは完全に正当な HTML であることがわかっており、次のように読み取ろうとするとreadHTMLTable
します。
library(XML)
table.text <- '<table>
<thead>
<tr><th>Col1</th><th>Col2</th>
</thead>
<tbody>
<tr><td>1a</td><td>2a</td></tr>
</tbody>
<tbody>
<tr><td>1b</td><td>2b</td></tr>
</tbody>
</table>'
readHTMLTable(table.text)
私が得る出力は最初の<tbody>
要素だけを取ります:
$`NULL`
Col1 Col2
1 1a 2a
残りは無視します。これは予想される動作ですか?(ドキュメントには何も言及されていません。) また、テーブル全体にアクセスするための最も柔軟で堅牢な方法は何ですか?
私は現在使用しています
table.text <- gsub('</tbody>[[:space:]]*<tbody>', '', table.text)
readHTMLTable(table.text)
これは、URL を直接使用してこのようなテーブルを取得することを妨げてreadHTMLTable
おり、また、あまり堅牢ではないと感じています。