Compare commits

..

No commits in common. "5d822caf979e8d7b4ee6241d13a25b47729d7b27" and "9117841bb1dd6a250e1564aaa6cb068f672a8002" have entirely different histories.

2 changed files with 2 additions and 24 deletions

View file

@ -11,7 +11,7 @@ The script auto-updates itself from this repo (via `@updateURL`), so you don't n
## What it does
On a book page on Bookshop.org, Amazon (`.fr`/`.com`), Waterstones, or Google Books, it:
On a book page on Bookshop.org, Amazon (`.fr`/`.com`), or Waterstones, it:
1. Extracts the book's ISBN (from the URL or page content) and, as a fallback, title/author.
2. Checks whether the book is available on:
@ -24,7 +24,6 @@ On a book page on Bookshop.org, Amazon (`.fr`/`.com`), Waterstones, or Google Bo
- `bookshop.org/p/books/*`
- `waterstones.com/book/*`
- `amazon.fr` and `amazon.com` product pages (`/dp/*`)
- Google Books (`books.google.com/books?id=…`, `google.com/books/edition/…`, and the `.fr` equivalents)
## Notes

View file

@ -1,7 +1,7 @@
// ==UserScript==
// @name Book Links
// @namespace http://tampermonkey.net/
// @version 1.3
// @version 1.1
// @description Show Anna's Archive and Waterstones links when browsing books
// @license MIT
// @match https://bookshop.org/p/books/*
@ -10,10 +10,6 @@
// @match https://www.amazon.fr/*/dp/*
// @match https://www.amazon.com/dp/*
// @match https://www.amazon.com/*/dp/*
// @match https://books.google.com/books?*
// @match https://www.google.com/books/edition/*
// @match https://books.google.fr/books?*
// @match https://www.google.fr/books/edition/*
// @connect annas-archive.gl
// @connect www.waterstones.com
// @connect www.chez-mon-libraire.fr
@ -66,17 +62,6 @@
return null;
}
if (host.includes('google.')) {
const text = document.body?.innerText || '';
const m13 = text.match(/\b(97[89][-\d ]{9,14}\d)\b/);
if (m13) {
const cleaned = m13[1].replace(/[-\s]/g, '');
if (/^97[89]\d{10}$/.test(cleaned)) return cleaned;
}
const m10 = text.match(/ISBN[\s:]+(?:[\d-]+,\s*)?(\d{9}[\dX])\b/);
return m10 ? isbn10to13(m10[1]) : null;
}
if (host.includes('bookshop.org')) {
const el = document.querySelector('[itemprop="isbn"]');
if (el && /^97[89]\d{10}$/.test(el.textContent.trim())) return el.textContent.trim();
@ -121,12 +106,6 @@
return { title, author };
}
if (host.includes('google.')) {
const title = document.querySelector('h1')?.textContent?.trim();
const author = document.querySelector('a[href*="inauthor"]')?.textContent?.trim();
return { title, author };
}
if (host.includes('waterstones.com')) {
const title = (
document.querySelector('[itemprop="name"]') ||