16 releases
0.2.9 | Aug 14, 2024 |
---|---|
0.2.8 | Aug 6, 2024 |
0.2.7 | May 20, 2024 |
0.2.6 | Mar 31, 2024 |
0.1.141 | Oct 11, 2023 |
#455 in Web programming
88 downloads per month
31KB
498 lines
flipkart-scraper
Scrapes product details and searches on Flipkart.
Disclaimer: I am not affiliated or linked to flipkart in any way. This repository is an exploratory project and not meant for commercial use.
Features
-
Does not require any client id/secret or any other authorisation
-
Fetch product details from URL of product which includes
- Product Name
- Current and Original Price
- User Rating
- Stock avalibility
- Flipkart Assured Product
- Share URL (More presentable URL)
- Seller Information (Seller Name and Rating)
- Product Thumbnails
- Highlights
- Available Offers
- Product Specifications
-
Search product on Flipkart from its query, giving the following details
- Product Name
- Product Link
- Product Thumbnail
- Current Price of Product
- Original Price of Product
Example Usage
Navigate to examples for basic use cases.
NPM Package
NPM Package can be used to parse the contents of webpage to return a valid JSON object response.
Refer to examples/js_demo example for a quick overview of using the npm package.
The package can be installed with npm
npm i @dvishal485/flipkart_scraper
-
Fetching Product Details
-
Fetch the product page using fetch API or axios or any other networking module.
-
Parse the webpage content using the library.
import flipkart_scraper from "@dvishal485/flipkart_scraper"; const product_details = flipkart_scraper.parse_product_details(product_webpage); console.log(product_details);
-
-
Searching Products
- Fetch the search page (
https://www.flipkart.com/search?q={query}
) using fetch API or axios or any other networking module. - Parse the webpage content using the library.
import flipkart_scraper from "@dvishal485/flipkart_scraper"; const search_result = flipkart_scraper.parse_search_results(product_webpage); console.log(search_result);
- Fetch the search page (
Rust Crate
-
Fetching Product Details
Snippet to fetch and print product details from Flipkart using product's URL.
use std::error::Error; use flipkart_scraper::{ProductDetails, Url}; #[tokio::main] async fn main() -> Result<(), Box<dyn Error>> { let url = "https://www.flipkart.com/samsung-galaxy-f13-waterfall-blue-64-gb/p/itm583ef432b2b0c"; let details = ProductDetails::fetch(Url::parse(url)?).await; println!("{:#?}", details); Ok(()) }
-
Searching Products
Snippet to search a particular product on Flipkart using a given query.
use flipkart_scraper::ProductSearch; use std::error::Error; #[tokio::main] async fn main() -> Result<(), Box<dyn Error>> { let query = "samsung washing machine"; let details = ProductSearch::search(query.into()).await; if let Ok(s) = details { println!("{:#?}\n\nTotal {} search results.", s, s.results.len()); } else { println!("{}", details.unwrap_err()); } Ok(()) }
License
This Project is licensed under GNU General Public License (GPL-3.0).
Dependencies
~5–15MB
~216K SLoC