Saya mencoba membuat mirror situs web menggunakan wget, tetapi saya tidak ingin mengunduh banyak file, jadi saya menggunakan --reject
opsi wget untuk tidak menyimpan semua file. Namun wget masih akan mengunduh semua file dan kemudian menghapus file setelahnya jika cocok dengan opsi tolak saya.
Apakah ada cara untuk memberitahu wget untuk tidak mengikuti tautan tertentu jika mereka cocok dengan beberapa wildcard shell? Jika wget tidak dapat melakukan ini, apakah ada perintah linux umum lainnya yang dapat melakukan ini?
linux
wget
mirror
mirror-site
Rory
sumber
sumber
Jawaban:
Anda juga dapat mencoba HTTrack yang memiliki, termasuk IMO, lebih fleksibel dan intuitif termasuk / tidak termasuk logika. Sesuatu seperti ini...
Aturan akan diterapkan secara berurutan, dan akan menggantikan aturan sebelumnya ...
sumber
Sepertinya ini tidak mungkin di wget
sumber
Di bawah --reject bagian 'man wget':
"Perhatikan bahwa jika salah satu karakter wildcard, *,?, [Atau], muncul di elemen daftar masuk atau daftar ulang, itu akan diperlakukan sebagai pola, bukan sufiks."
Jika Anda melakukan ini, Anda mungkin ingin memberikan contoh pola yang Anda gunakan dan apa yang menurut Anda cocok, dan itu tidak cocok. Anda mengatakan mereka cocok, tetapi apakah Anda yakin?
Juga, pastikan Anda memasukkan daftar ini dalam tanda kutip, sehingga shell tidak memperluas wildcard itu sebelum meneruskan argumennya menjadi wget.
Bahkan jika sistem Anda tidak memiliki versi 1.12, baca bagian Jenis File dari manual di sini . Menurut log perubahan, pengelola menambahkan beberapa peringatan:
sumber
Anda dapat membatasi tingkat rekursi dengan
-l NUMBER
opsi, jika itu membantu (tidak mengikuti pola regex tertentu).Tingkat unduhan "2" index.html, subsitus / gambar / etc dan tautan di subsitus.
sumber
bagaimana Anda menggunakan wget? coba gunakan dengan cara ini:
perintah ini akan mengabaikan file gif dan jpg dan swf.
sumber
Salah satu solusinya adalah menjalankan wget melalui server proxy. Setel proxy Anda untuk melarang pola tertentu. Ini akan memblokir wget dari pernah mengunduhnya di tempat pertama.
wget akan mengunduh dan menghapus file yang cocok dengan pola -R. itu juga bisa cocok dengan pola, bukan hanya ekstensi atau bagian dari nama file. Namun itu tidak berhenti wget dari mengunduh dulu dan menghapusnya nanti.
httrack memang memiliki beberapa fitur bagus tetapi dalam pengalaman saya cara menyimpan "file" mungkin agak aneh misalnya jika httrack datang di index.asp? Tipe = BASIC & PAGEID = 2234234
dapat menyimpannya tetapi Anda harus mengatakannya untuk melestarikan bagian dari kueri
misalnya% h% p /% n% [TIPE: @TYPE = ::]% [PAGEID: PAGEID = ::].% t
@ adalah tempat penampung untuk tanda tanya, Anda dapat mengganti nama file nanti, atau mungkin luput dari tanda tanya? masalahnya adalah.% t akan menambahkan '.html' ke bagian akhir URI Anda yang awalnya tidak memiliki '.html' Dan jika Anda melepasnya, gambar yang diunduh httrack akan kekurangan ekstensi file.
Lebih baik menggunakan IMHO wget
sumber