Fsdb::F...e_to_db(3)
hey bestie π this is Fsdb::F...e_to_db(3) from the User Contributed Perl Documentation β yes, the whole manual β and it's serving very specific HTML-table-to-fsdb realness. β¨
πΈ NAME πΈ
html_table_to_db β convert HTML tables into fsdb, periodt. π
π οΈ SYNOPSIS π οΈ
It's literally this, bestie:
html_table_to_db <source.html >dest.fsdb
β¨ DESCRIPTION β¨
Okay so this one converts a HTML table to Fsdb format. The input is an HTML table (not fsdb), no cap.
Column names are taken from TH elements, or defined as column0 through columnN if no such elements appear. The way that works is very demure, very mindful.
The output is two-space-separated fsdb. (Someday more general field separators should be supported.) Fsdb fields are normalized version of the html file: multiple spaces are compressed to one.
This module also supports the standard fsdb options, bestie:
-dβ enable debugging output. Turn it on if you need the tea. π-ior--inputInputSource β read from InputSource, typically a file name, or-for standard input, or (if in Perl)IO::Handle,Fsdb::IOorFsdb::BoundedQueueobjects. π«Ά-oor--outputOutputDestination β write to OutputDestination, typically a file name, or-for standard output, or (if in Perl)IO::Handle,Fsdb::IOorFsdb::BoundedQueueobjects. π--autorunor--noautorunβ by default, programs process automatically, butFsdb::Filterobjects in Perl do not run until you invoke therun()method. The--(no)autorunoption controls that behavior within Perl. ποΈ--helpβ show help. You know the vibe check. π--manβ show full manual. Main character documentation energy. π
π¦ SAMPLE USAGE π¦
vibe check: here's the input HTML table and the output it gives you. π
Input:
<table>
<tr><th>account</th> <th>passwd</th> <th>uid</th> <th>gid</th> <th>fullname</th> <th>homedir</th> <th>shell</th> </tr>
<tr bgcolor="#f0f0f0"><td>johnh</td> <td>*</td> <td>2274</td> <td>134</td> <td>John & Ampersand</td> <td>/home/johnh</td> <td>/bin/bash</td> </tr>
<tr bgcolor="#f0f0f0"><td>greg</td> <td>*</td> <td>2275</td> <td>134</td> <td>Greg < Lessthan</td> <td>/home/greg</td> <td>/bin/bash</td> </tr>
<tr bgcolor="#f0f0f0"><td>root</td> <td>*</td> <td>0</td> <td>0</td> <td>Root ; Semi</td> <td>/root</td> <td>/bin/bash</td> </tr>
<tr bgcolor="#d0d0d0"><td>four</td> <td>*</td> <td>1</td> <td>1</td> <td>Fourth Row</td> <td>/home/four</td> <td>/bin/bash</td> </tr>
</table>
Command:
html_table_to_db
Output:
#fsdb -F S account passwd uid gid fullname homedir shell
johnh * 2274 134 John & Ampersand /home/johnh /bin/bash
greg * 2275 134 Greg < Lessthan /home/greg /bin/bash
root * 0 0 Root ; Semi /root /bin/bash
four * 1 1 Fourth Row /home/four /bin/bash
π SEE ALSO π
Fsdb.db_to_html_table.
iykyk, go look at those too. π«Ά
π§ CLASS FUNCTIONS π§
These are the internals, and yes, we keep them exactly as written. No cap. π
new
$filter = new Fsdb::Filter::csv_to_db(@arguments);
Create a new csv_to_db object, taking command-line arguments. (The page really says csv_to_db here; I'm not gonna fix the lore. π)
set_defaults
$filter->set_defaults();
Internal: set up defaults. π
parse_options
$filter->parse_options(@ARGV);
Internal: parse command-line arguments. π
setup
$filter->setup();
Internal: setup, parse headers. πΈ
run
$filter->run();
Internal: run over each rows. (Yes, βeach rowsβ is the original vibe. π« )
π AUTHOR and COPYRIGHT π
Copyright (C) 1991-2015 by John Heidemann <johnh@isi.edu>
This program is distributed under terms of the GNU general public license, version 2. See the file COPYING with the distribution for details.
okay that's the whole vibe π source/version check: perl v5.32.1; date check: 2024-08-02; go convert some tables, bestie! π
π¦ where this page comes from
- epel 9: perl-Fsdb 2:3.9-1.el9 Β· GPLv2
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms