Tải xuống tất cả các liên kết PDF trong một trang web? [đóng cửa]


23

Bạn có biết một phần mềm tốt để tải xuống tất cả các liên kết PDF trong một trang web ??

Hệ điều hành là Windows 7.

Câu trả lời:


36

Bạn có thể sử dụng wget và chạy một lệnh như thế này:

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

Hoặc với các tùy chọn ngắn:

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

CẬP NHẬT: Vì bản cập nhật của bạn cho biết bạn đang chạy Windows 7: sử dụng wget cho Windows từ một cmddấu nhắc.

CẬP NHẬT 2: Đối với một giải pháp đồ họa - mặc dù nó có thể quá mức vì nó cũng nhận được các tệp khác là DownThem ALL


cảm ơn kevin vì lời khuyên của bạn, wget có vẻ tốt, dù sao tôi cũng thích phần mềm 'đồ họa', dòng lệnh không. :)
iAsk

2
Điều này từ chối ngay cả trang .html ban đầu. Nó đã bao giờ được thử nghiệm?
dan3

Câu hỏi hỏi về việc tải xuống tất cả các liên kết PDF, vì vậy, trang .html ban đầu sẽ bị bỏ qua.
Kevin Worthington

Có khả năng làm điều tương tự trong Windows 7 bằng Power Shell không?
Benedikt Buchert

1
Tôi cũng sẽ đề nghị ném chậm trễ ít nhất vài giây giữa các lần tải tệp để được đẹp và không áp đảo máy chủ từ xa. e, g, cho wget, thêm một lá cờ của-w 5
KJH

6
  1. Trong trình duyệt của bạn, nhấn CTRL+ SHIFT+ Jvà nhập

    var pdflinks = []; Array.prototype.map. gọi (document.querySelector ALL ("a [href $ = \". pdf \ "]"), hàm (e, i) {if ((pdflinks | {pdflinks.push (e.href);}}); console.log (pdflinks.join (""));

    Điều này sẽ trở lại trong giao diện điều khiển:

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

  2. Bây giờ sử dụng wgetvới các tùy chọn dòng lệnhwget url1 url2 ...

Sao chép và dán này, mở một bàn điều khiển nhập wgetnhấn nút chuột phải để chèn nội dung clipboard của bạn và nhấn enter.

Để sử dụng tệp tải xuống, hãy nối các dòng với "\ n" và sử dụng tham số như sau wget -i mydownload.txt

Lưu ý rằng hầu hết các chương trình tải xuống (GUI) khác cũng chấp nhận được gọi với danh sách URL được phân tách bằng dấu cách.

Hi vọng điêu nay co ich. Đây là cách tôi thường làm điều đó. Nó nhanh hơn và linh hoạt hơn bất kỳ tiện ích mở rộng nào có giao diện người dùng đồ họa, tôi phải tìm hiểu và vẫn quen thuộc.


1
Tốt hơn nữa, console.log('"' + pdflinks.join('" "') + '"')- nếu không, bạn thực sự không nhận được các URL được trích dẫn
dan3

1

Nếu bạn muốn ở lại trình duyệt, tôi đã viết một phần mở rộng web cho chính xác mục đích này - Tôi đang làm việc để thêm khả năng lưu các tệp PDF bài viết học thuật với các tiêu đề được định dạng chính xác nhưng nếu bạn chỉ muốn tải xuống thì tất cả đều hoàn hảo cho điều này

Nó được gọi là Tab Save và trên cửa hàng Chrome trực tuyến tại đây . Bạn thậm chí không phải nhập danh sách URL nếu bạn chỉ mở tất cả chúng trong các tab (nhưng đối với số lượng lớn tệp, điều này có thể làm chậm máy tính vì vậy tôi đã thêm tùy chọn để thêm chính bạn).


0

Gần đây tôi đã sử dụng uGet (trên Windows) cho việc này. Nó có GUI và bạn có thể lọc các tệp bạn định tải xuống.

Lưu cố gắng nhớ tất cả những


0

Trên Google Chrome, có thể sử dụng các tiện ích mở rộng như:

  • Tải chủ

    Với tiện ích mở rộng này, bạn có thể tải xuống tất cả hình ảnh, video, pdf, doc và bất kỳ tệp nào khác được liên kết trên trang web bạn đang truy cập.


0

Google

Có một số công cụ Python cho phép tải xuống các liên kết PDF từ trang web dựa trên kết quả tìm kiếm của Google.

Ví dụ

Lưu ý: Tôi là người duy trì cả hai tập lệnh được đề cập.

Cả hai đều đang triển khai xgooglethư viện Python. Cái ngã ba của thư viện này dựa trên pkrumins/xgooglephiên bản .


Liên quan: Một tìm kiếm trên web từ dòng lệnh Linux .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.