Завантажити всі посилання PDF на веб-сторінку? [зачинено]


23

Чи знаєте ви гарне програмне забезпечення для завантаження всіх посилань PDF на веб-сторінку ??

Операційною системою є Windows 7.

Відповіді:


36

Ви можете використовувати wget і запустити таку команду:

wget --recursive --level=1 --no-directories --no-host-directories --accept pdf http://example.com

Або з короткими варіантами:

wget -r -l 1 -nd -nH -A pdf http://example.com

ОНОВЛЕННЯ: Оскільки оновлення говорить про те, що ви працюєте з Windows 7: використовуйте wget для Windows з cmdпідказки.

ОНОВЛЕННЯ 2: Для графічного рішення - хоча це може бути надмірним, оскільки воно також отримує й інші файли - DownThemAll


дякую Кевін за пораду, wget виглядає добре, все одно я віддаю перевагу "графічному" програмному забезпеченню, не командному рядку. :)
iAsk

2
Це відхиляє навіть початкову сторінку .html. Це коли-небудь тестували?
dan3

Питання задає питання про завантаження всіх посилань у PDF, тому так, початкова .html сторінка буде проігнорована.
Кевін Вортінгтон

Чи є можливість зробити те ж саме в Windows 7 за допомогою Power Shell?
Бенедікт Бюхерт

1
Я б також запропонував затримати принаймні кілька секунд між завантаженнями файлів, щоб це було приємно і не перевантажувало віддалений сервер. e, g, для wget, додайте у прапор-w 5
KJH

6
  1. У веб-переглядачі натисніть CTRL+ SHIFT+ Jі введіть

    var pdflinks = []; Array.prototype.map. виклик (document.querySelectorAll ("a [href $ = \". pdf \ "]"), функція (e, i) {if ((pdflinks || []). indexOf (e.href) == - 1) {pdflinks.push (e.href);}}); console.log (pdflinks.join (""));

    Це повернеться в консолі:

    " /superuser/tagged/somepdf1.pdf " " /superuser/tagged/somepdf2.pdf " " /superuser/tagged/somepdf3.pdf "

  2. Тепер використовуємо wgetпараметри командного рядкаwget url1 url2 ...

Скопіюйте та вставте це, відкрийте консоль, wgetнатисніть праву кнопку миші, щоб вставити вміст буфера обміну, і натисніть клавішу Enter.

Щоб використовувати файл завантаження, з'єднайте рядки з "\ n" та використовуйте параметр наступним чином wget -i mydownload.txt

Зауважте, що більшість інших програм (GUI) для завантаження теж приймають, щоб викликати їх із розділеним пробілом списком URL-адрес.

Сподіваюся, це допомагає. Ось як я це взагалі роблю. Це швидше і гнучкіше, ніж будь-яке розширення з графічним інтерфейсом, мені доводиться вчитися і залишатися знайомим.


1
Ще краще, console.log('"' + pdflinks.join('" "') + '"')- інакше ви фактично не отримаєте цитовані URL-адреси
dan3

1

Якщо ви хочете залишитися в браузері, я написав веб-розширення саме для цієї мети - я працюю над тим, щоб додати можливість зберігати PDF-файли наукових статей із правильно відформатованими заголовками, але якщо ви просто хочете завантажити їх, все це ідеально для цього.

Це називається Tab Зберегти та Інтернет - магазин Chrome тут . Вам навіть не потрібно вводити список URL-адрес, якщо ви просто відкриєте їх на вкладках (але для великої кількості файлів це може уповільнити роботу комп'ютера, тому я додав можливість додати свій власний).


0

Нещодавно я використовував для цього uGet (в Windows). Він має графічний інтерфейс, і ви можете фільтрувати файли, які ви хочете завантажити.

Економить, намагаючись запам'ятати все це


0

У Google Chrome можна використовувати розширення, такі як:

  • Завантажити Майстер

    За допомогою цього розширення ви можете завантажити всі зображення, відео, pdf, документи та будь-який інший файл, пов’язаний на веб-сторінці, яку ви відвідуєте.


0

Google

Є кілька інструментів Python, що дозволяє завантажувати PDF-посилання з веб-сайту на основі результатів пошуку Google.

Напр

Примітка. Я підтримую обох згаданих сценаріїв.

Вони обидва впроваджують xgoogleбібліотеку Python. Моя вилка цієї бібліотеки заснована на pkrumins/xgoogleверсії .


Пов'язане: пошук в Інтернеті з командного рядка Linux .

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.