Skip to content

Support your (geographically distant) local comic book store (online).

License

Notifications You must be signed in to change notification settings

a-xavier/oz_comics_search

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Oz Comics Search

Support your (geographically distant) local comic book store (online).

Download GUI app

Screenshotv0.1

Why

Because I live in a part of Australia with no local comic book store and found myself ordering online a lot, trying as much as possible to stick to Australian stores and limit ordering from big chains (Amazon AU, Bookdepository UK). However both price and inventory varies a lot bwteen store so I ended up loosing time checking availability / comparing price.

Also I wanted to learn a bit of BeautifulSoup and TkInter.

How (does it works)

Oz Comics Search is very simple. It takes a simple search term (the name of a series) and optionally a book type (Trade / Issue) and a book number. It then interrogate what would be the first web-page of results on each store and scrape the Title / Price / URL.

Which Store is included

Oz Comics Search checks the following stores (in alphabetical order):

(Don't hesitate to suggest more in the issues)

I'm more of a trade person so I only kept stores with :

  • An online store
  • A descent offering of trade
  • An easy to scrape website

Tutorial

  • GUI VERSION: click search and then double click on an entry to open the page in browser
  • CLI version:
    • First pip install bs4 requests
    • Then for example:
      • python oz_comic_search.py "search term in quotes" -b issue/trade -n number General Synthax (-b and -n are optional)
      • python oz_comic_search.py "batman flash button" -b issue for all single issues of BATMAN/THE FLASH the button
      • python oz_comic_search.py "paper girls" -b trade` -n 6 for the 6th Trade of Paper Girls

Caveat

Since this script works through web page scrapping, it WILL break if any changes are made to the store's online store (All store searches are functional as of 04/08/2021). Code is also messy, I need to replace individual function for each store to a store class with a search method in the future. Also needs refinement of volume/issue number. Better parsing/filtering

(MIT LICENCE)