{"id":122818,"date":"2024-05-21T10:19:06","date_gmt":"2024-05-21T07:19:06","guid":{"rendered":"https:\/\/www.javacodegeeks.com\/?p=122818"},"modified":"2024-05-21T10:19:09","modified_gmt":"2024-05-21T07:19:09","slug":"parse-html-table-with-jsoup","status":"publish","type":"post","link":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html","title":{"rendered":"Parse HTML Table With Jsoup"},"content":{"rendered":"<p><strong>Jsoup<\/strong>, an open-source library, serves the purpose of scraping HTML pages by offering an API for parsing, extracting, and manipulating data through DOM API methods. Let us delve into understanding how to parse an HTML table with Jsoup in Java.<\/p>\n<h2><a name=\"understanding-jsoup-parsing-html-tables\"><\/a>1. Understanding Jsoup: Parsing HTML Tables<\/h2>\n<p><a href=\"https:\/\/jsoup.org\/\" target=\"_blank\" rel=\"noopener\">Jsoup<\/a> is an open-source Java library that simplifies HTML parsing. It equips developers with a robust API to navigate, extract, and manipulate HTML content. Specifically, it excels in parsing HTML tables, offering a straightforward approach to extracting tabular data from web pages.<\/p>\n<h3>1.1 Pros<\/h3>\n<ul>\n<li>Ease of Use: Jsoup boasts a simple and intuitive API, making HTML parsing accessible even to novice developers.<\/li>\n<li>HTML Manipulation: With Jsoup, manipulating HTML content becomes seamless. Developers can easily traverse the DOM tree, extract desired elements, and modify them as needed.<\/li>\n<li>Robust Parsing: Jsoup exhibits robust parsing capabilities, handling even complex HTML structures with efficiency.<\/li>\n<li>Cross-Platform Compatibility: Being a Java library, Jsoup ensures cross-platform compatibility, allowing developers to use it across different operating systems seamlessly.<\/li>\n<li>Extensive Documentation: Jsoup offers comprehensive documentation, including tutorials and examples, which facilitate quick learning and implementation.<\/li>\n<\/ul>\n<h3>1.2 Cons<\/h3>\n<ul>\n<li>Java Dependency: As Jsoup is a Java library, developers need to have proficiency in Java programming to utilize its functionalities effectively.<\/li>\n<li>Limited JavaScript Execution: Jsoup primarily parses static HTML content and does not support dynamic content rendered by JavaScript. This limitation restricts its applicability for scraping JavaScript-heavy websites.<\/li>\n<li>Performance Concerns: While Jsoup provides efficient parsing, performance may degrade when dealing with extremely large HTML documents or when executing complex parsing operations.<\/li>\n<\/ul>\n<h2><a name=\"code-example\"><\/a>2. Working Example<\/h2>\n<h3>2.1 Adding Dependencies<\/h3>\n<p>To use Jsoup in your Java project, you need to include its dependency in your <code>pom.xml<\/code> if you&#8217;re using Maven:<\/p>\n<pre class=\"brush:xml; wrap-lines:false;\">&lt;dependency&gt;\n    &lt;groupId&gt;org.jsoup&lt;\/groupId&gt;\n    &lt;artifactId&gt;jsoup&lt;\/artifactId&gt;\n    &lt;version&gt;1.15.3&lt;\/version&gt;\n&lt;\/dependency&gt;\n<\/pre>\n<p>Or, if you&#8217;re using Gradle, add the following to your <code>build.gradle<\/code>:<\/p>\n<pre class=\"brush:plain; wrap-lines:false;\">implementation 'org.jsoup:jsoup:1.15.3'<\/pre>\n<h3>2.2 Code Snippet<\/h3>\n<p>Below is a Java code showcasing how the Jsoup library is employed to parse HTML tables, as well as to make updates and deletions within them.<div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<pre class=\"brush:java; wrap-lines:false;\">package com.jcg.example;\n\nimport org.jsoup.Jsoup;\nimport org.jsoup.nodes.Document;\nimport org.jsoup.nodes.Element;\n\npublic class TableManipulationExample {\n\n    public static void main(String[] args) {\n        try {\n            \/\/ Parse HTML content containing a table\n            String html = \"&lt;table&gt;\" +\n                    \"&lt;tr&gt;&lt;td&gt;Row 1, Cell 1&lt;\/td&gt;&lt;td&gt;Row 1, Cell 2&lt;\/td&gt;&lt;\/tr&gt;\" +\n                    \"&lt;tr&gt;&lt;td&gt;Row 2, Cell 1&lt;\/td&gt;&lt;td&gt;Row 2, Cell 2&lt;\/td&gt;&lt;\/tr&gt;\" +\n                    \"&lt;\/table&gt;\";\n            Document doc = Jsoup.parse(html);\n\n            \/\/ Select the table element\n            Element table = doc.select(\"table\").first();\n\n            \/\/ Print the original table\n            System.out.println(\"Original Table:\");\n            printTable(table);\n\n            \/\/ Update content of a specific cell\n            Element cellToUpdate = table.select(\"tr:eq(1) td:eq(1)\").first();\n            cellToUpdate.text(\"Updated Content\");\n\n            \/\/ Print the updated table\n            System.out.println(\"\\nUpdated Table:\");\n            printTable(table);\n\n            \/\/ Create a new row element\n            Element newRow = new Element(\"tr\");\n            \/\/ Populate the row with cell elements\n            newRow.append(\"&lt;td&gt;New Row, Cell 1&lt;\/td&gt;\");\n            newRow.append(\"&lt;td&gt;New Row, Cell 2&lt;\/td&gt;\");\n            \/\/ Append the new row to the table\n            table.append(String.valueOf(newRow));\n\n            \/\/ Print the table after adding a new row\n            System.out.println(\"\\nTable after adding a new row:\");\n            printTable(table);\n\n            \/\/ Select the row to delete\n            Element rowToDelete = table.select(\"tr:eq(1)\").first();\n            \/\/ Remove the row from the table\n            rowToDelete.remove();\n\n            \/\/ Print the table after deleting a row\n            System.out.println(\"\\nTable after deleting a row:\");\n            printTable(table);\n\n        } catch (Exception e) {\n            e.printStackTrace();\n        }\n    }\n\n    \/\/ Helper method to print the table\n    private static void printTable(Element table) {\n        \/\/ Iterate over each row in the table\n        for (Element row : table.select(\"tr\")) {\n            \/\/ Iterate over each cell in the row\n            for (Element cell : row.select(\"td\")) {\n                System.out.print(cell.text() + \"\\t\");\n            }\n            System.out.println();\n        }\n    }\n}\n<\/pre>\n<h4>2.2.1 Code Explanation<\/h4>\n<p>The code defines:<\/p>\n<ul>\n<li>Importing Required Classes: Import necessary classes from the Jsoup library for parsing HTML documents and manipulating HTML elements.<\/li>\n<li>Main Class Definition: This is the main class definition. It contains the <code>main<\/code> method where the execution of the program starts.<\/li>\n<li>Parsing HTML Content:\n<ul>\n<li>Create an HTML string containing a table with two rows and two columns.<\/li>\n<li>Parse this HTML string into a <code>Document<\/code> object using Jsoup&#8217;s <code>parse<\/code> method.<\/li>\n<\/ul>\n<\/li>\n<li>Selecting the Table Element: Use Jsoup&#8217;s CSS selector syntax to select the first <code>table<\/code> element from the parsed document and store it in the <code>table<\/code> variable.<\/li>\n<li>Printing the Original Table: Print the original table by calling the <code>printTable<\/code> method, passing the <code>table<\/code> element as an argument.<\/li>\n<li>Updating Content of a Cell: Select the cell at the second row and second column of the table and update its text content to &#8220;Updated Content&#8221;.<\/li>\n<li>Printing the Updated Table: Print the updated table after modifying the content of a cell.<\/li>\n<li>Adding a New Row to the Table: Create a new row, populate it with two cells, and append it to the table.<\/li>\n<li>Printing the Table After Adding a New Row: Print the table after adding a new row.<\/li>\n<li>Deleting a Row from the Table: Select the second row of the table and remove it from the DOM.<\/li>\n<li>Printing the Table After Deleting a Row: Print the table after deleting a row.<\/li>\n<li>Helper Method to Print the Table: Iterate over each row and cell in the provided table element and print the text content of each cell. This method is called to print both the original and modified tables.<\/li>\n<\/ul>\n<h4>2.2.2 Code Output<\/h4>\n<p>When executed, the code will output the following on the IDE console:<\/p>\n<pre class=\"brush:plain; wrap-lines:false;\">Original Table:\nRow 1, Cell 1\tRow 1, Cell 2\t\nRow 2, Cell 1\tRow 2, Cell 2\t\n\nUpdated Table:\nRow 1, Cell 1\tRow 1, Cell 2\t\nRow 2, Cell 1\tUpdated Content\t\n\nTable after adding a new row:\nRow 1, Cell 1\tRow 1, Cell 2\t\nRow 2, Cell 1\tUpdated Content\t\nNew Row, Cell 1\tNew Row, Cell 2\t\n\nTable after deleting a row:\nRow 1, Cell 1\tRow 1, Cell 2\t\nNew Row, Cell 1\tNew Row, Cell 2\t\n<\/pre>\n<h2><a name=\"conclusion\"><\/a>3. Conclusion<\/h2>\n<p>In conclusion, the utilization of the Jsoup library for parsing, updating, and deleting HTML tables provides developers with a powerful and efficient means to interact with web content. Jsoup simplifies the process of extracting data from HTML documents, particularly tables, by offering a robust API and intuitive methods for traversal and manipulation.<\/p>\n<p>Through the example code provided earlier, we&#8217;ve seen how Jsoup enables the parsing of HTML tables, allowing access to individual cells and rows for data extraction or modification. Additionally, the ability to update cell content and dynamically manipulate the structure of the table, such as adding or removing rows, demonstrates the versatility and flexibility that Jsoup offers in handling HTML content.<\/p>\n<p>Moreover, Jsoup&#8217;s support for CSS selectors enables precise targeting of specific elements within the HTML document, streamlining the process of data extraction and manipulation. This capability proves invaluable, especially when dealing with complex HTML structures or large datasets.<\/p>\n<p>However, it&#8217;s important to note that while Jsoup excels in parsing static HTML content, its functionality may be limited when it comes to dynamically generated content or websites heavily reliant on JavaScript for rendering. In such cases, alternative approaches or supplementary tools may be necessary to fully capture and process the desired data.<\/p>\n<p>Overall, Jsoup stands as a reliable and indispensable tool for developers engaged in web scraping, data extraction, and HTML parsing tasks. Its ease of use, robust feature set, and extensive documentation make it a preferred choice for a wide range of projects and applications in the realm of web development and data analysis.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Jsoup, an open-source library, serves the purpose of scraping HTML pages by offering an API for parsing, extracting, and manipulating data through DOM API methods. Let us delve into understanding how to parse an HTML table with Jsoup in Java. 1. Understanding Jsoup: Parsing HTML Tables Jsoup is an open-source Java library that simplifies HTML &hellip;<\/p>\n","protected":false},"author":26931,"featured_media":112,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[849,793],"class_list":["post-122818","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-enterprise-java","tag-html","tag-jsoup"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Parse HTML Table With Jsoup - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"Java Jsoup Parse Html Table: Parse HTML tables in Java effortlessly using Jsoup, simplifying data extraction and manipulation.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Parse HTML Table With Jsoup - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"Java Jsoup Parse Html Table: Parse HTML tables in Java effortlessly using Jsoup, simplifying data extraction and manipulation.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2024-05-21T07:19:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-21T07:19:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Yatin Batra\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Yatin Batra\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html\"},\"author\":{\"name\":\"Yatin Batra\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/cda31a4c1965373fed40c8907dc09b8d\"},\"headline\":\"Parse HTML Table With Jsoup\",\"datePublished\":\"2024-05-21T07:19:06+00:00\",\"dateModified\":\"2024-05-21T07:19:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html\"},\"wordCount\":857,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"keywords\":[\"HTML\",\"JSoup\"],\"articleSection\":[\"Enterprise Java\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html\",\"name\":\"Parse HTML Table With Jsoup - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"datePublished\":\"2024-05-21T07:19:06+00:00\",\"dateModified\":\"2024-05-21T07:19:09+00:00\",\"description\":\"Java Jsoup Parse Html Table: Parse HTML tables in Java effortlessly using Jsoup, simplifying data extraction and manipulation.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"width\":150,\"height\":150,\"caption\":\"java-interview-questions-answers\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/parse-html-table-with-jsoup.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Enterprise Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\\\/enterprise-java\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Parse HTML Table With Jsoup\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/cda31a4c1965373fed40c8907dc09b8d\",\"name\":\"Yatin Batra\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/12\\\/Yatin.batra_.jpg\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/12\\\/Yatin.batra_.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/12\\\/Yatin.batra_.jpg\",\"caption\":\"Yatin Batra\"},\"description\":\"An experience full-stack engineer well versed with Core Java, Spring\\\/Springboot, MVC, Security, AOP, Frontend (Angular &amp; React), and cloud technologies (such as AWS, GCP, Jenkins, Docker, K8).\",\"sameAs\":[\"https:\\\/\\\/www.javacodegeeks.com\"],\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/author\\\/yatin-batra\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Parse HTML Table With Jsoup - Java Code Geeks","description":"Java Jsoup Parse Html Table: Parse HTML tables in Java effortlessly using Jsoup, simplifying data extraction and manipulation.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html","og_locale":"en_US","og_type":"article","og_title":"Parse HTML Table With Jsoup - Java Code Geeks","og_description":"Java Jsoup Parse Html Table: Parse HTML tables in Java effortlessly using Jsoup, simplifying data extraction and manipulation.","og_url":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2024-05-21T07:19:06+00:00","article_modified_time":"2024-05-21T07:19:09+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","type":"image\/jpeg"}],"author":"Yatin Batra","twitter_card":"summary_large_image","twitter_creator":"@javacodegeeks","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Yatin Batra","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html#article","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html"},"author":{"name":"Yatin Batra","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/cda31a4c1965373fed40c8907dc09b8d"},"headline":"Parse HTML Table With Jsoup","datePublished":"2024-05-21T07:19:06+00:00","dateModified":"2024-05-21T07:19:09+00:00","mainEntityOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html"},"wordCount":857,"commentCount":0,"publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","keywords":["HTML","JSoup"],"articleSection":["Enterprise Java"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html","url":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html","name":"Parse HTML Table With Jsoup - Java Code Geeks","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","datePublished":"2024-05-21T07:19:06+00:00","dateModified":"2024-05-21T07:19:09+00:00","description":"Java Jsoup Parse Html Table: Parse HTML tables in Java effortlessly using Jsoup, simplifying data extraction and manipulation.","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","width":150,"height":150,"caption":"java-interview-questions-answers"},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/parse-html-table-with-jsoup.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Java","item":"https:\/\/www.javacodegeeks.com\/category\/java"},{"@type":"ListItem","position":3,"name":"Enterprise Java","item":"https:\/\/www.javacodegeeks.com\/category\/java\/enterprise-java"},{"@type":"ListItem","position":4,"name":"Parse HTML Table With Jsoup"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/cda31a4c1965373fed40c8907dc09b8d","name":"Yatin Batra","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/12\/Yatin.batra_.jpg","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/12\/Yatin.batra_.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/12\/Yatin.batra_.jpg","caption":"Yatin Batra"},"description":"An experience full-stack engineer well versed with Core Java, Spring\/Springboot, MVC, Security, AOP, Frontend (Angular &amp; React), and cloud technologies (such as AWS, GCP, Jenkins, Docker, K8).","sameAs":["https:\/\/www.javacodegeeks.com"],"url":"https:\/\/www.javacodegeeks.com\/author\/yatin-batra"}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/122818","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/26931"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=122818"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/122818\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media\/112"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=122818"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=122818"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=122818"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}