我有一个 HTML 文档,其中包含<table>
我想要从中提取数据并输出到 csv 中。
该文件有544609657
字符,大约 545 兆字节,全部在一行中。
我设法通过使用和进行许多字符串替换将数据提取到 csv 中sed
,但我想通过使用 GNU 并行来加快速度。考虑到它是单行文件,这可能吗?
我的以下尝试没有提高处理速度,也没有改善内存使用情况:
parallel -a table.html --pipepart 'sed -e [...etc.]' > table.csv
或者
cat table.html | parallel --pipe 'sed -e [...etc.]' > table.csv
我猜问题是因为该文件只有一行。如果是这样,我可以使用什么策略来更有效地处理文件?
答案1
你的想法完全正确。
你只需要学习--recstart
:
parallel --pipepart --recstart '<tr>' -a big --block -10 'sed ...' > table.csv
这里我们假设 HTML 表格的每一行都以 开头<tr>
。