У меня есть файл с некоторыми данными о книгах в формате MARC, в котором некоторые строки ISBN. Я хочу заменить эти строки идентификатором Google Книг этого ISBN, если он существует. Вот код до сих пор, который просто удаляет строки:
perl -pe "s#ISBN(.*)#$(wget --output-document=- --quiet --user-agent=Mozilla/5.0 \"http://books.google.com/books?jscmd=viewapi&bibkeys=\1\")#mg" < 5-${file} > 6-${file}
PS: Google немного нечетко использует автоматизированные инструменты: Books Data API рекомендует такие инструменты, как curl/wget, но нет инструкций, как избежать блокировки при использовании таких инструментов. Я также почти уверен, что видел пункт в ToS, в котором говорится, что пользователи не могут отправлять автоматические запросы, но я не могу найти его снова. Это обсуждается на их форуме.