Как извлечь png изображения высокого разрешения из функции Amazon «Заглянуть внутрь книги»? - PullRequest
0 голосов
/ 05 августа 2020

Я собирал предварительные просмотры книг из книг Google и Amazon вручную на Firefox с помощью инструментов отладчика Проверить элемент на вкладке «Сеть» с фильтром изображений. Это утомительно, поэтому я хотел автоматизировать, если мог.

Я нашел удобный инструмент, написанный на C (getxbook) с тремя утилитами: одна для google, другая для amazon и третья для barnes и noble . Кажется, работает только утилита Google.

Я пытаюсь понять URL-адрес запроса для изображений Amazon, чтобы я мог автоматизировать в Node.js.

Вот URL-адрес для привет -res изображение книги:

https://d1b14unh5d6w7g.cloudfront.net/1405193557.01.S00R.JUMBOXXX.jpg?Expires=1596719655&Signature=N69M9pndwI5lhb35vd2XNBC/DAxYpGKIqG+gvhHrY7icH3DxB+DZ8oOZT/pqLJbRiJeHVkBiOTWOqA7wpNctg4fa/MwnvLiZ8jBIOKEJsJ1jhT9Lma4KGCaUapyji3oqz0p/qf42OuGISoKeXjoCX9d9ghbKU1QiIPq6evaLypc=&Key-Pair-Id=APKAIUO27P366FGALUMQ

Из этой страницы видно, что Amazon использует подписанные URL-адреса CloudFront для защиты транзакции.

Сначала кусочки что я понимаю:

  • 1405193557 - это ISBN10
  • S00R - это номер страницы (в данном случае страница 14), следующим будет S00S (страница 15) и т. д. c .
  • JUMBOXXX дает высокое разрешение (800x1205) [XXXXXXXX дает низкое разрешение (600x903)]
  • Key-Pair-Id: одинаков для всех страниц
  • Истекает: приращение времени в секундах
  • Подпись: 172 символа, всегда заканчивается на '=', похоже, в кодировке base64

Мне все еще нужно понять:

  • Подпись: в какой-то момент загрузки библиотека (sitb-library- js. js) извлекает все URL-адреса изображений с сервера с предварительно сгенерированными подписями

Я бы хотел вставить код, который печатает список jumboImageUrls [] после его заполнения. Я понятия не имею, как go вперед с этим - greasemonkey?

Любые мысли или опыт приветствуются.

1 Ответ

2 голосов
/ 05 августа 2020

Сообщение отправляется на https://www.amazon.ca/gp/search-inside/service-data. Ответ содержит список URL-адресов изображений с подписью.

enter image description here

введите описание изображения здесь

...