Skorzystaj z poniższych przykładów konwertowania tabel HTML into Używanie arkuszy kalkulacyjnych JSON, CSV i Excel GrabzIt's Perl API. Jednak zanim zaczniesz, pamiętaj, że po wywołaniu URLToTable, HTMLToTable or FileToTable metody Save or SaveTo należy pobrać metodę przechwytywania tabeli. Jeśli chcesz szybko sprawdzić, czy ta usługa jest właśnie dla Ciebie, możesz spróbować pokaz na żywo przechwytywania tabel HTML z adresu URL.
Poniższy przykład kodu automatycznie konwertuje pierwszą tabelę HTML odkrytą na określonej stronie internetowej into dokument CSV.
$grabzIt->URLToTable("https://www.tesla.com"); # Then call the Save or SaveTo method
$grabzIt->HTMLToTable("<html><body><table><tr><th>Name</th><th>Age</th></tr> <tr><td>Tom</td><td>23</td></tr><tr><td>Nicola</td><td>26</td></tr> </table></body></html>"); # Then call the Save or SaveTo method
$grabzIt->FileToTable("tables.html"); # Then call the Save or SaveTo method
Domyślnie spowoduje to konwersję pierwszej zidentyfikowanej tabeli into stole. Jednak drugą tabelę na stronie internetowej można przekonwertować, przekazując 2 do tableNumberToInclude
Metoda.
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->tableNumberToInclude(2); $grabzIt->URLToTable("https://www.tesla.com", $options); # Then call the Save or SaveTo method $grabzIt->SaveTo("result.csv");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->tableNumberToInclude(2); $grabzIt->HTMLToTable("<html><body><table><tr><th>Name</th><th>Age</th></tr> <tr><td>Tom</td><td>23</td></tr><tr><td>Nicola</td><td>26</td></tr> </table></body></html>", $options); # Then call the Save or SaveTo method $grabzIt->SaveTo("result.csv");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->tableNumberToInclude(2); $grabzIt->FileToTable("tables.html", $options); # Then call the Save or SaveTo method $grabzIt->SaveTo("result.csv");
Możesz także określić targetElement
metoda, która zapewni konwersję tylko tabel w ramach określonego identyfikatora elementu.
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->targetElement("stocks_table"); $grabzIt->URLToTable("https://www.tesla.com", $options); # Then call the Save or SaveTo method $grabzIt->SaveTo("result.csv");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->targetElement("stocks_table"); $grabzIt->HTMLToTable("<html><body><table id='stocks_table'><tr><th>Name</th><th>Age</th></tr> <tr><td>Tom</td><td>23</td></tr><tr><td>Nicola</td><td>26</td></tr> </table></body></html>", $options); # Then call the Save or SaveTo method $grabzIt->SaveTo("result.csv");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->targetElement("stocks_table"); $grabzIt->FileToTable("tables.html", $options); # Then call the Save or SaveTo method $grabzIt->SaveTo("result.csv");
Alternatywnie możesz przechwycić wszystkie tabele na stronie internetowej, przekazując true do includeAllTables
Metoda ta będzie jednak działać tylko z formatem XLSX. Ta opcja umieści każdą tabelę w nowym arkuszu w wygenerowanym skoroszycie arkusza kalkulacyjnego.
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->format('xlsx'); $options->includeAllTables(1); $grabzIt->URLToTable("https://www.tesla.com", $options); # Then call the Save or SaveTo method $grabzIt->SaveTo("result.xlsx");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->format('xlsx'); $options->includeAllTables(1); $grabzIt->HTMLToTable("<html><body><table><tr><th>Name</th><th>Age</th></tr> <tr><td>Tom</td><td>23</td></tr><tr><td>Nicola</td><td>26</td></tr> </table></body></html>", $options); # Then call the Save or SaveTo method $grabzIt->SaveTo("result.xlsx");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->format('xlsx'); $options->includeAllTables(1); $grabzIt->FileToTable("tables.html", $options); # Then call the Save or SaveTo method $grabzIt->SaveTo("result.xlsx");
Za pomocą Perla i GrabzIt możesz konwertować znalezione tabele HTML into JSON. Aby rozpocząć, określ json
w parametrze formatu. W tym przykładzie tworzymy połączenie synchroniczne przy użyciu SaveTo
Metoda, która zwraca JSON string, można to następnie przeanalizować za pomocą biblioteki takiej jak JSON :: Parse.
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->format("json"); $options->tableNumberToInclude(1); $grabzIt->URLToTable("https://www.tesla.com", $options); $json = $grabzIt->SaveTo();
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->format("json"); $options->tableNumberToInclude(1); $grabzIt->HTMLToTable("<html><body><table><tr><th>Name</th><th>Age</th></tr> <tr><td>Tom</td><td>23</td></tr><tr><td>Nicola</td><td>26</td></tr> </table></body></html>", $options); $json = $grabzIt->SaveTo();
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->format("json"); $options->tableNumberToInclude(1); $grabzIt->FileToTable("tables.html", $options); $json = $grabzIt->SaveTo();
Możesz przekazać niestandardowy identyfikator do stół metody pokazane poniżej, ta wartość jest następnie zwracana do twojego programu obsługi GrabzIt Perl. Na przykład ten niestandardowy identyfikator może być identyfikatorem bazy danych, umożliwiając skojarzenie zrzutu ekranu z określonym rekordem bazy danych.
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->customId("123456"); $grabzIt->URLToTable("https://www.tesla.com", $options); # Then call the Save method $grabzIt->Save("http://www.example.com/handler.pl");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->customId("123456"); $grabzIt->HTMLToTable("<html><body><h1>Hello World!</h1></body></html>", $options); # Then call the Save method $grabzIt->Save("http://www.example.com/handler.pl");
$grabzIt = GrabzItClient->new("Sign in to view your Application Key", "Sign in to view your Application Secret"); $options = GrabzItTableOptions->new(); $options->customId("123456"); $grabzIt->FileToTable("example.html", $options); # Then call the Save method $grabzIt->Save("http://www.example.com/handler.pl");