From 1a37c403e3ea6b9ed4da2ea50a5094a7bd2ce928 Mon Sep 17 00:00:00 2001 From: localhorst Date: Tue, 10 Jan 2023 18:30:09 +0100 Subject: [PATCH] fix scrape for new website --- README.md | 22 +++++++++++++++++++++- scrape_listing.py | 10 +++++----- 2 files changed, 26 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 3af0704..563ef0b 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,23 @@ # eBayCompetitorPriceCompare -scrape ebay(.de) for competitors listings and compare the price to own ebay shop \ No newline at end of file +scrape ebay(.de) for competitors listings and compare the price to own ebay shop + +## Requirements + +``` +pip install tinydb tqdm +``` + +## Usage + +### Scrape listings +Scrape all listings from seller's shop with `python search_seller.py` +This will create `seller_db.json` with all found listings. +Delete this file before next run manually. + +### Compare listings +Compare and export all found listings with `python compare.py` +This will take a while and exports the static html. + +## Example export +See `example_export/` for an example. \ No newline at end of file diff --git a/scrape_listing.py b/scrape_listing.py index 764bd1c..3f9ec34 100644 --- a/scrape_listing.py +++ b/scrape_listing.py @@ -28,18 +28,18 @@ def scrape_listing(url): soup = make_soup(url) #print(soup.find("div", class_="vim x-item-title").span.text) - #print(soup.find("span", id="prcIsum")["content"]) - #print(soup.find("img", id="icImg")["src"]) + #print(soup.find("span", itemprop="price")["content"]) + #print(soup.find("img", itemprop="image")["src"]) listing = { 'title': soup.find("div", class_="vim x-item-title").span.text, - 'price': float(soup.find("span", id="prcIsum")["content"]), - 'image': soup.find("img", id="icImg")["src"], + 'price': float(soup.find("span", itemprop="price")["content"]), + 'image': soup.find("img", itemprop="image")["src"], 'url' : url } return listing if __name__ == "__main__": - listing = scrape_listing("https://www.ebay.de/itm/165508291809") + listing = scrape_listing("https://www.ebay.de/itm/162861653490") print(listing)