Відповіді:
Відповідно до інформації про доступ роботів до наших сторінок :
Доступ роботів до нашого сайту повинен залишатися останнім ресурсом, коли все інше не вдалося. Також пам’ятайте, що веб-сайт Project Gutenberg захищений авторським правом.
Однак є надія :
Кращі альтернативи
- Отримайте офлайн-версію веб-сайту Project Gutenberg.
- Отримайте всі файли електронних книг Project Gutenberg.
- Отримайте дані каталогу Project Gutenberg.
І:
[...] Ви можете отримати всі наші електронні книги в заархівованих файлах, вказавши свого робота за адресою http://www.gutenberg.org/robot/harvest
[...] Якщо розпакувати zip-файли, ви отримаєте ще 70 000 файлів.
Це приклад того, як отримати всі файли за допомогою
wget
:wget -w 2 -m http://www.gutenberg.org/robot/harvest
[...] Якщо потрібно лише деякі типи файлів, скажіть:
wget -w 2 -m http://www.gutenberg.org/robot/harvest?filetypes[]=txt
[...] Якщо ви хочете лише файли певною мовою, скажіть:
wget -w 2 -m http://www.gutenberg.org/robot/harvest?langs[]=de
Отже, я б припинив:
wget -w 2 -m http://www.gutenberg.org/robot/harvest?filetypes[]=txt&langs[]=en
--level=0
. Але я думаю, вам краще дозволити перервати та перезапустити: спробуйте --level 9999 --no-clobber
, що пропустить файли, які у вас уже є (якщо ви все ще знаходитесь в одній папці на диску).
--input-file
У посібнику .
-c
варіант, але все ж. Я вказав offset=xxx
у дзеркальній URL-адресі, але все-таки це завантаження з першої сторінки.
Ви можете завантажити всю колекцію англійських книг та інших мов Гутенберга в одному файлі ZIM, який сильно стискається і потім може бути відкритий за допомогою Kiwix як на робочому столі, так і на Android. Англійські книги - 40 Гб.
Хоча обрана відповідь правильна, це потенційно може спричинити дві проблеми:
wget
команда не зможе, це рекурсивна перевірка завантаження файлів із зовнішнього дзеркала.Наведене нижче рішення вирішує ці проблеми:
wget -H -w 2 -m http://www.gutenberg.org/robot/harvest?filetypes[]=txt&langs[]=en \
--referer="http://www.google.com" \
--user-agent="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.6) Gecko/20070725 Firefox/2.0.0.6" \
--header="Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5" \
--header="Accept-Language: en-us,en;q=0.5" \
--header="Accept-Encoding: gzip,deflate" \
--header="Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7" \
--header="Keep-Alive: 300"
Ви можете змінити рядки реферера та користувача-агента, щоб забезпечити трохи випадковості.
ftp://mirrors.pglaf.org/mirrors/gutenberg-iso має кілька хороших варіантів.
ftp://mirrors.pglaf.org/mirrors/gutenberg-iso/pgdvd042010.iso - це 8 ГБ файл, який повинен бути достатнім для ваших потреб.
Більше інформації тут:
https://www.gutenberg.org/wiki/Gutenberg:The_CD_and_DVD_Project#Downloading_Via_FTP , він дає всі варіанти завантаження архіву, включаючи FTP та BitTorrent.
Ще один варіант - чудовий інструмент на веб-сайті http://pgiso.pglaf.org/ .
Чому б не використати всі ваші надмірно складні та показані вище навички програмування та знання, щоб створити просту кнопку, яка пов'язує всі ці дії та говорить "Завантажити всі поточні книги" - із вкладкою мови, коли натискаєте на неї.
Я впевнений, що більшість користувачів, які заходять на сайт, є колекціонерами електронних книг, і вручну завантажувати певні книги на теми, які їх цікавлять, це нормально для 1 або 2 книг. Але зробити більшу колекцію вручну - це тягар. Тим не менше, якщо вони знадобляться для дослідження або просто хочуть мати величезну цифрову бібліотеку книг на своєму ПК. Більшість людей вимикаються та розсіюються від сайту, коли вони розуміють, що для цього потрібно мати Майстер комп’ютерів. Отже, кнопка "Завантажити всі поточні книги" принесла б користь сайту проекту та його користувачам, і це, безумовно, створить ще більше відвідувачів сайту. Таким чином всі щасливі.