All notable changes to this project will be documented in this file. The format is based on Keep a Changelog.
Version number 1.MINOR.PATCH, increments:
- MINOR version when functionality was added, removed, changed
- PATCH version when bug fixes were added
- Issue #3 "infinite scrolling not working"
- settings.py-example:
WISHLIST_ANY_URL
was removed but still used to constructAMAZON_HOST
This version breaks your existing installation. But your old installation might be already dysfunctional because Amazon removed the list of wishlists for non-authenticated users.
- settings.py:
WISHLISTS_EXCLUDES
removed, you have to add your relevant wishlists toWISHLISTS
now; so we turned from explicit exclusion with all lists loaded by default to explicit inclusion.
- Moved project to Python 3, Python 2 no longer supported
- used-price wasn't extracted any longer due to additional new lines in the source HTML and confusion over Python's regex library: re.match() and re.search() same but one is multiline
- Amazon modified its wishlists webpage; we retain backwards compatability to older page versions
- Sometimes there are scraping errors from the very start and you have to restart the program; in earlier versions the final HTML report was mistakenly (re-)written with 0 books
- The HTML report is now generated by the Python script itself, but still using the XSLT file.
Reduces dependence on the benevolence of the web browser or external XSLT processors (see v1.4.4).
There is a new setting in settings.py:
WISHLISTS_XSLOUTPATH
which defaults towishlist.html
- Firefox doesn't autoload the XSLT file anymore,
which is referenced by the XML file and located in the same directory ("Cross Origin" and file URIs).
wishlist.sh
generates the HTML file outside the browser now usingxsltproc
if available on the user's system and will print a warning otherwise.
ValueError: invalid literal for int() with base 10: 'MEDIUM'
: Amazon encodes priorities either with literals ('MEDIUM', 'LOWEST' etc) now or numbers (0, -2 etc).
- Amazon doesn't display alternative price offerings on its wishlists anymore. At least in the source code there's an alternative price for items not offered by Amazon. Unfortunately, this situation reduces the value of this project.
- Download-delay setting to handle 503 Service Unavailable from Amazon
- Scrapy settings in settings.py were ignored
- XML viewer indicates free shipping option
- new XML-viewer section with products <= n EUR, you can confgure 'n' in the XSLT file
- allows non-exact URls for wishlist exclusion in settings.py, it's sufficient if an url starts with the given strings
- override default buy-prices by specifying a buy-price directly in a product comment on an Amazon wishlist (#2)
- the XML-viewer only adds products to the "Latest" section if there was a
significant price cut which can be configured in
wishlist.xslt
- the XML-viewer sorts products by priority first (highest to lowest) and price second (lowest to highest), now
- new program dependency:
lxml
replaces the minidom library for internal XML operations