{"id":1183,"date":"2017-08-22T11:59:47","date_gmt":"2017-08-22T11:59:47","guid":{"rendered":"https:\/\/www.h2kinfosys.com\/blog\/?p=1183"},"modified":"2025-10-28T04:05:13","modified_gmt":"2025-10-28T08:05:13","slug":"extracting-one-object-page-links-pagebulk","status":"publish","type":"post","link":"https:\/\/www.h2kinfosys.com\/blog\/extracting-one-object-page-links-pagebulk\/","title":{"rendered":"Extract Multiple Objects and Links in Bulk with Selenium"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\"><strong>The Power of Bulk Data Extraction in Selenium<\/strong><\/h2>\n\n\n\n<p>In today\u2019s data-driven digital world, automation engineers and testers often need to <strong>extract multiple objects<\/strong> from web pages images, links, text fields, and more. Whether it\u2019s scraping product details from e-commerce sites, capturing all hyperlinks for SEO analysis, or verifying UI elements during regression testing, Selenium offers the perfect solution.<\/p>\n\n\n\n<p>Selenium is one of the most widely used automation testing frameworks that enables testers to control web browsers programmatically. With just a few lines of Python or Java code, testers can interact with every element on a webpage making it easy to extract multiple objects and links in bulk efficiently.<\/p>\n\n\n\n<p>If you\u2019re looking to become a pro at automation, understanding how to extract data at scale is an essential skill. This guide will help you master the techniques, best practices, and use cases behind this concept just like what\u2019s taught in the <a href=\"https:\/\/www.h2kinfosys.com\/courses\/selenium-automation-testing-certification-course\/\" data-type=\"link\" data-id=\"https:\/\/www.h2kinfosys.com\/courses\/selenium-automation-testing-certification-course\/\">Selenium certification <\/a>course offered by <strong>H2K Infosys<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Why Extracting Multiple Objects Matters in Selenium Testing<\/strong><\/h2>\n\n\n\n<p>Before diving into the technicalities, it\u2019s important to understand why this process matters so much in real-world testing.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. Automation Efficiency<\/strong><\/h3>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img fetchpriority=\"high\" decoding=\"async\" width=\"886\" height=\"600\" src=\"https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/Automation_a9ad2fff04.jpg\" alt=\"Automation Efficiency\" class=\"wp-image-31220\" style=\"width:602px;height:auto\" title=\"\" srcset=\"https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/Automation_a9ad2fff04.jpg 886w, https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/Automation_a9ad2fff04-300x203.jpg 300w, https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/Automation_a9ad2fff04-768x520.jpg 768w\" sizes=\"(max-width: 886px) 100vw, 886px\" \/><\/figure>\n<\/div>\n\n\n<p>When you automate the extraction of multiple objects, you minimize manual inspection and increase testing efficiency. It helps in identifying issues across hundreds of elements at once.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2. Enhanced Data Coverage<\/strong><\/h3>\n\n\n\n<p>Bulk extraction ensures every link, image, or button is verified during testing covering all possible user interactions on a website.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3. Web Scraping and Analysis<\/strong><\/h3>\n\n\n\n<p>It is also used for data scraping. You can extract product lists, prices, or URLs for analytics, SEO research, or competitive intelligence.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>4. Simplified Reporting<\/strong><\/h3>\n\n\n\n<p>Extracted data can be stored and processed for test reports, improving visibility in QA workflows.<\/p>\n\n\n\n<p>According to Stack Overflow\u2019s 2024 Developer Survey, It remains among the top five automation tools used globally by testers and developers. This popularity highlights its role in modern <a href=\"https:\/\/medium.com\/qa-wiki\" data-type=\"link\" data-id=\"https:\/\/medium.com\/qa-wiki\" rel=\"nofollow noopener\" target=\"_blank\">QA<\/a> and automation environments.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Understanding Web Elements in Selenium<\/strong><\/h2>\n\n\n\n<p>Before extracting multiple objects, testers must first understand <strong>web elements<\/strong>\u2014the building blocks of any webpage. Each object (like a button, image, or link) is defined by HTML tags and attributes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Common Web Elements You Can Extract<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Links (Anchor tags <code>&lt;a&gt;<\/code>)<\/strong><\/li>\n\n\n\n<li><strong>Images (<code>&lt;img&gt;<\/code>)<\/strong><\/li>\n\n\n\n<li><strong>Buttons (<code>&lt;button&gt;<\/code> or <code>&lt;input type=\"button\"&gt;<\/code>)<\/strong><\/li>\n\n\n\n<li><strong>Input fields (<code>&lt;input&gt;<\/code>, <code>&lt;textarea&gt;<\/code>)<\/strong><\/li>\n\n\n\n<li><strong>Paragraphs or text (<code>&lt;p&gt;<\/code>, <code>&lt;div&gt;<\/code>, <code>&lt;span&gt;<\/code>)<\/strong><\/li>\n<\/ul>\n\n\n\n<p>Each of these can be accessed through these <strong>locators<\/strong>, which include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>ID<\/strong><\/li>\n\n\n\n<li><strong>Name<\/strong><\/li>\n\n\n\n<li><strong>Class Name<\/strong><\/li>\n\n\n\n<li><strong>Tag Name<\/strong><\/li>\n\n\n\n<li><strong>CSS Selector<\/strong><\/li>\n\n\n\n<li><strong>XPath<\/strong><\/li>\n<\/ul>\n\n\n\n<p>To <strong>extract multiple objects<\/strong>, you\u2019ll typically use:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">find_elements_by_tag_name()\nfind_elements_by_class_name()\nfind_elements_by_xpath()\n<\/pre>\n\n\n\n<p>These methods return a list of web elements allowing you to process or extract multiple objects in one go.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Step-by-Step: How to Extract Multiple Objects in Selenium<\/strong><\/h2>\n\n\n\n<p>Let\u2019s explore how you can extract multiple web elements using Python and Selenium.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 1: Set Up Selenium Environment<\/strong><\/h3>\n\n\n\n<p>First, install Selenium and set up your preferred web driver.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">pip install selenium\n<\/pre>\n\n\n\n<p>Download and configure a browser driver (e.g., ChromeDriver for Chrome).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 2: Import Required Libraries<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">from selenium import webdriver\nfrom selenium.webdriver.common.by import By\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 3: Launch Browser and Load Webpage<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">driver = webdriver.Chrome()\ndriver.get(\"https:\/\/example.com\")\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 4: Extract Multiple Links<\/strong><\/h3>\n\n\n\n<p>Use <code>find_elements<\/code> to grab all links (<code>&lt;a&gt;<\/code> tags).<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">links = driver.find_elements(By.TAG_NAME, \"a\")\nfor link in links:\n    print(link.get_attribute(\"href\"))\n<\/pre>\n\n\n\n<p>This extracts all hyperlinks present on the page. The <code>get_attribute(\"href\")<\/code> method retrieves the link destination for each object.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 5: Extract Multiple Images<\/strong><\/h3>\n\n\n\n<p>You can do the same for image elements:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">images = driver.find_elements(By.TAG_NAME, \"img\")\nfor image in images:\n    print(image.get_attribute(\"src\"))\n<\/pre>\n\n\n\n<p>This prints all image URLs available on the webpage.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Step 6: Extract Multiple Objects with XPath<\/strong><\/h3>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/1726466160388-1024x576.png\" alt=\"Objects with XPath\" class=\"wp-image-31230\" title=\"\" srcset=\"https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/1726466160388-1024x576.png 1024w, https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/1726466160388-300x169.png 300w, https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/1726466160388-768x432.png 768w, https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/1726466160388.png 1240w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Sometimes, you\u2019ll need to use <strong>XPath<\/strong> for dynamic or complex elements.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">elements = driver.find_elements(By.XPATH, \"\/\/div[@class='product']\")\nfor e in elements:\n    print(e.text)\n<\/pre>\n\n\n\n<p>This extracts text from all product containers with the specified class name.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Example: Extracting All Links from a Website<\/strong><\/h2>\n\n\n\n<p>Here\u2019s a practical use case demonstrating bulk extraction of links using Selenium.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">from selenium import webdriver\nfrom selenium.webdriver.common.by import By\nimport time\n\ndriver = webdriver.Chrome()\ndriver.get(\"https:\/\/www.h2kinfosys.com\")\n\n# Allow page to load\ntime.sleep(3)\n\nlinks = driver.find_elements(By.TAG_NAME, \"a\")\nprint(f\"Total links found: {len(links)}\")\n\nfor link in links:\n    href = link.get_attribute(\"href\")\n    print(href)\n\ndriver.quit()\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Output Example:<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">Total links found: 120\nhttps:\/\/www.h2kinfosys.com\/selenium-training\nhttps:\/\/www.h2kinfosys.com\/data-analytics-training\nhttps:\/\/www.h2kinfosys.com\/contact-us\n<\/pre>\n\n\n\n<p>This kind of extraction helps in verifying broken links, collecting sitemap data, or analyzing internal navigation structure.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Extracting Multiple Objects from Dynamic Pages<\/strong><\/h2>\n\n\n\n<p>Modern web applications often load data dynamically through JavaScript or AJAX. It handles this easily with waits and scrolls.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Explicit Waits Example<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">from selenium.webdriver.common.by import By\nfrom selenium.webdriver.support.ui import WebDriverWait\nfrom selenium.webdriver.support import expected_conditions as EC\n\ndriver = webdriver.Chrome()\ndriver.get(\"https:\/\/example.com\/products\")\n\n# Wait until elements are visible\nWebDriverWait(driver, 10).until(\n    EC.visibility_of_all_elements_located((By.CLASS_NAME, \"product-item\"))\n)\n\nproducts = driver.find_elements(By.CLASS_NAME, \"product-item\")\nprint(f\"Found {len(products)} products.\")\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Infinite Scroll Example<\/strong><\/h3>\n\n\n\n<p>If content loads when scrolling down, use JavaScript execution:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">driver.execute_script(\"window.scrollTo(0, document.body.scrollHeight);\")\n<\/pre>\n\n\n\n<p>Repeat this command in a loop to extract elements appearing dynamically.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Best Practices for Extracting Multiple Objects<\/strong><\/h2>\n\n\n\n<p>To ensure your automation is reliable, follow these best practices:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. Use the Right Locator Strategy<\/strong><\/h3>\n\n\n\n<p>Prefer <strong>unique and stable locators<\/strong> like ID or Name. Avoid absolute XPaths as they may break after webpage updates.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2. Manage Waits and Page Loads<\/strong><\/h3>\n\n\n\n<p>Always use explicit waits to ensure elements have fully loaded before extraction.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3. Handle Exceptions Gracefully<\/strong><\/h3>\n\n\n\n<p>Webpages change frequently. Use try-except blocks to handle missing or stale elements.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">try:\n    element = driver.find_element(By.ID, \"username\")\nexcept:\n    print(\"Element not found.\")\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>4. Store Extracted Data Efficiently<\/strong><\/h3>\n\n\n\n<p>Export your extracted objects into a CSV or database for further analysis.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">import csv\nwith open('links.csv', 'w', newline='') as file:\n    writer = csv.writer(file)\n    writer.writerow(['Links'])\n    for link in links:\n        writer.writerow([link.get_attribute(\"href\")])\n<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>5. Avoid Overloading the Server<\/strong><\/h3>\n\n\n\n<p>Introduce short delays between requests to mimic human browsing behavior.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Real-World Applications of Extracting Multiple Objects<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>1. E-commerce Testing<\/strong><\/h3>\n\n\n\n<p>Extract all product details prices, descriptions, and images to validate UI and backend integration.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>2. SEO Analysis<\/strong><\/h3>\n\n\n\n<p>Extract all internal and external links from a website to check for broken URLs.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>3. Competitor Monitoring<\/strong><\/h3>\n\n\n\n<p>Automatically scrape competitors\u2019 websites for product updates, pricing, and offers.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>4. Regression Testing<\/strong><\/h3>\n\n\n\n<p>Compare elements from the old and new builds to detect UI changes or missing components.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>5. Data Analytics Integration<\/strong><\/h3>\n\n\n\n<p>Feed extracted data into Power BI or Tableau dashboards for visual reporting.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Common Challenges and Solutions<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th><strong>Challenge<\/strong><\/th><th><strong>Solution<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>Dynamic Elements<\/strong><\/td><td>Use explicit waits and dynamic XPaths.<\/td><\/tr><tr><td><strong>Stale Element Reference<\/strong><\/td><td>Re-locate the element before interaction.<\/td><\/tr><tr><td><strong>Pagination Issues<\/strong><\/td><td>Automate \u201cNext Page\u201d clicks in a loop.<\/td><\/tr><tr><td><strong>Duplicate Links<\/strong><\/td><td>Use sets to filter unique URLs.<\/td><\/tr><tr><td><strong>Captcha\/Anti-Bot Pages<\/strong><\/td><td>Integrate with tools like 2Captcha or manual checks for scraping permissions.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>These practical solutions are covered in the course offered by <strong>H2K Infosys<\/strong>, which trains students in handling real-world testing challenges effectively.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Industry Insights: Selenium\u2019s Role in Modern QA Automation<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/66432f9f4aab6a33d9fe1b9b_selenium-testing-1024x576.jpeg\" alt=\"Selenium\u2019s Role\" class=\"wp-image-31228\" title=\"\" srcset=\"https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/66432f9f4aab6a33d9fe1b9b_selenium-testing-1024x576.jpeg 1024w, https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/66432f9f4aab6a33d9fe1b9b_selenium-testing-300x169.jpeg 300w, https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/66432f9f4aab6a33d9fe1b9b_selenium-testing-768x432.jpeg 768w, https:\/\/www.h2kinfosys.com\/blog\/wp-content\/uploads\/2017\/08\/66432f9f4aab6a33d9fe1b9b_selenium-testing.jpeg 1080w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>According to GitHub Octoverse 2024, It repositories have over <strong>90,000 active projects<\/strong>, and automation testing continues to grow at <strong>15% annually<\/strong>. With companies rapidly adopting DevOps and Agile, bulk extraction and data validation have become standard practices in automation pipelines.<\/p>\n\n\n\n<p>Many organizations integrate Selenium with <strong>Python, Jenkins, and Allure Reports<\/strong> for continuous testing making it a must-have skill for QA professionals.<\/p>\n\n\n\n<p>By mastering how to <strong>extract multiple objects<\/strong>, you can create robust, data-driven test frameworks that save time and reduce human error.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Hands-On Practice: Mini Project<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Project Goal:<\/strong><\/h3>\n\n\n\n<p>Extract all article links and titles from a blog page and store them in a CSV file.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">from selenium import webdriver\nfrom selenium.webdriver.common.by import By\nimport csv\nimport time\n\ndriver = webdriver.Chrome()\ndriver.get(\"https:\/\/blog.h2kinfosys.com\")\ntime.sleep(3)\n\narticles = driver.find_elements(By.CLASS_NAME, \"post-title\")\ndata = []\n\nfor article in articles:\n    title = article.text\n    link = article.find_element(By.TAG_NAME, \"a\").get_attribute(\"href\")\n    data.append([title, link])\n\nwith open('articles.csv', 'w', newline='') as file:\n    writer = csv.writer(file)\n    writer.writerow(['Title', 'Link'])\n    writer.writerows(data)\n\ndriver.quit()\n<\/pre>\n\n\n\n<p>This script demonstrates how this simplifies data extraction and automation skills that are emphasized throughout the course by H2K Infosys.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Key Takeaways<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Extracting multiple objects<\/strong> in Selenium enhances automation efficiency and testing accuracy.<\/li>\n\n\n\n<li>Use <code>find_elements()<\/code> methods to collect elements in bulk.<\/li>\n\n\n\n<li>Always apply explicit waits and handle exceptions for dynamic pages.<\/li>\n\n\n\n<li>Data extracted can be stored for analytics, reporting, or regression verification.<\/li>\n\n\n\n<li>Real-world use cases include e-commerce validation, SEO audits, and UI testing.<\/li>\n\n\n\n<li>Master these skills through professional training at <strong>H2K Infosys<\/strong>.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Conclusion<\/strong><\/h2>\n\n\n\n<p>Mastering the art of extracting multiple objects and links in bulk gives you a competitive edge in automation testing. Whether you\u2019re building test frameworks or performing data-driven analysis, It provides the tools to automate efficiently.<\/p>\n\n\n\n<p>Take your skills to the next level with H2K Infosys\u2019 <a href=\"https:\/\/www.h2kinfosys.com\/courses\/selenium-automation-testing-certification-course\/\" data-type=\"link\" data-id=\"https:\/\/www.h2kinfosys.com\/courses\/selenium-automation-testing-certification-course\/\">Selenium course<\/a> online. Learn from experts, practice real-world projects, and become job-ready in the world of automation testing.<\/p>\n\n\n\n<p>Enroll today at H2K Infosys and start your automation journey now!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The Power of Bulk Data Extraction in Selenium In today\u2019s data-driven digital world, automation engineers and testers often need to extract multiple objects from web pages images, links, text fields, and more. Whether it\u2019s scraping product details from e-commerce sites, capturing all hyperlinks for SEO analysis, or verifying UI elements during regression testing, Selenium offers [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":31217,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[43],"tags":[45],"class_list":["post-1183","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-selenium-tutorials","tag-selenium"],"_links":{"self":[{"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/posts\/1183","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/comments?post=1183"}],"version-history":[{"count":9,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/posts\/1183\/revisions"}],"predecessor-version":[{"id":31368,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/posts\/1183\/revisions\/31368"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/media\/31217"}],"wp:attachment":[{"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/media?parent=1183"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/categories?post=1183"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.h2kinfosys.com\/blog\/wp-json\/wp\/v2\/tags?post=1183"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}