2012-05-23 9 views
5

मैं कुछ डेटा के लिए एक सरल पासवर्ड-सुरक्षित वेब-पोर्टल को मिरर करना चाहता हूं, जिसे मैं प्रतिबिंबित & अद्यतित रखना चाहता हूं। अनिवार्य रूप से यह वेबसाइट फ़ोल्डरों & में व्यवस्थित डेटा के साथ एक निर्देशिका सूची है, मुझे वास्तव में HTML फ़ाइलों को & अन्य स्वरूपण तत्वों को रखने की परवाह नहीं है। हालांकि कुछ विशाल फ़ाइल प्रकार हैं जो डाउनलोड करने के लिए बहुत बड़े हैं, इसलिए मैं इन्हें अनदेखा करना चाहता हूं।दर्पण http वेबसाइट, कुछ फ़ाइलों को छोड़कर

wget -m -R/--reject ध्वज का उपयोग करके मैं जो चाहता हूं वह लगभग करता है, सिवाय इसके कि सभी फाइलें डाउनलोड हो जाती हैं, फिर यदि वे -आर ध्वज से मेल खाते हैं, तो वे हटा दिए जाते हैं।

यहाँ कैसे मैं wget उपयोग कर रहा हूँ है:

wget --http-user userName --http-password password -R index.html,*tiff,*bam,*bai -m http://web.server.org/ 

कौन इस तरह उत्पादन पैदा करता है, पुष्टि है कि एक बहिष्कृत फ़ाइल (index.html) (क) डाउनलोड किया जाता है, और (ख) तो नष्ट कर दिया जाता है:

...
--2012-05-23 09: 38: 38-- http://web.server.org/folder/
मौजूदा web.server.org:80 के लिए कनेक्शन पुनः उपयोग।
HTTP अनुरोध भेजा गया, प्रतिक्रिया का इंतजार ... 401 प्रमाणीकरण आवश्यक
web.server.org:80 के मौजूदा कनेक्शन का पुन: उपयोग करना।
HTTP अनुरोध भेजा है, का इंतजार प्रतिक्रिया ... 200 ठीक
की लंबाई: 2677 (2.6K) [पाठ/HTML]
की बचत करने के लिए: `web.server.org/folder/index.html ' 100% [= ================================================== ================================================== =================>] 2,677 --.- 0s

अंतिम संशोधित शीर्षलेख गायब - टाइम-टिकटें बंद हो गईं।
2012-05-23 09:38:39 (328 MB/s) - `web.server.org/folder/index.html 'बचाया [2677/2677]

निकाला जा रहा है web.server.org/folder /index.html क्योंकि इसे अस्वीकार कर दिया जाना चाहिए।

...

वहाँ डाउनलोड करने से पहले फ़ाइल को अस्वीकार करने के wget मजबूर करने के लिए एक तरीका है?
क्या कोई विकल्प है जिसे मुझे विचार करना चाहिए?

इसके अलावा, मुझे उपयोगकर्ता नाम & पासवर्ड की आपूर्ति के बावजूद, प्रत्येक डाउनलोड की गई फ़ाइल के लिए 401 Authorization Required त्रुटि क्यों मिलती है। यह wget उपयोगकर्ता नाम/पासवर्ड को आजमाने से पहले, हर बार अन-प्रमाणीकृत कनेक्ट करने का प्रयास करता है।

धन्यवाद, मार्क

+0

देखें इस (डुप्लिकेट) प्रश्न से wget को संशोधित करने के बारे में समाधान: http://stackoverflow.com/questions/12704197/wget-reject-still-downloads-file – taranaki

उत्तर

1

wget के साथ संभव नहीं: http://linuxgazette.net/160/misc/lg/how_to_make_wget_exclude_a_particular_link_when_mirroring.html

ठीक है, मैं नहीं नए संस्करणों के बारे में निश्चित है, हालांकि हूँ।

लगभग 401 कोड, कोई राज्य नहीं रखा जाता है (HTTP प्रमाणीकरण के लिए कुकी का उपयोग नहीं किया जाता है), इसलिए उपयोगकर्ता नाम और पासवर्ड प्रत्येक अनुरोध के साथ भेजा जाना चाहिए। अनुरोध करने का प्रयास करने से पहले अनुरोध करें w/o उपयोगकर्ता & पहले अनुरोध करें।

4

पावुक (http://www.pavuk.org) एक आशाजनक विकल्प की तरह दिखता है जो आपको वेबसाइटों को दर्पण करने, यूआरएल पैटर्न के आधार पर फ़ाइलों को छोड़कर और फ़ाइल नाम एक्सटेंशन को अनुमति देता है ... लेकिन पैवुक 0.9.35 सेग-दोष/लंबी स्थानांतरण के बीच में यादृच्छिक रूप से मर जाता है & सक्रिय रूप से विकसित नहीं होता प्रतीत होता है (यह संस्करण नवंबर 2008 बनाया गया था)।

FYI करें, यहाँ मैं इसे कैसे उपयोग कर रहा था है: अंत में
pavuk -mode mirror -force_reget -preserve_time -progress -Robots -auth_scheme 3 -auth_name x -auth_passwd x -dsfx 'html,bam,bai,tiff,jpg' -dont_leave_site -remove_old -cdir /path/to/root -subdir /path/to/root -skip_url_pattern ’*icons*’ -skip_url_pattern '*styles*' -skip_url_pattern '*images*' -skip_url_pattern '*bam*' -skip_url_pattern '*solidstats*' http://web.server.org/folder 2>&1 | tee pavuk- तारीख .log

, wget --exclude-directories चाल किया:

wget --mirror --continue --progress=dot:mega --no-parent \ 
--no-host-directories --cut-dirs=1 \ 
--http-user x --http-password x \ 
--exclude-directories='folder/*/folder_containing_large_data*' --reject "index.html*" \ 
--directory-prefix /path/to/local/mirror 
http://my.server.org/folder 

के बाद से --exclude-directories वाइल्डकार्ड ऐसा नहीं अवधि '/', पूरे फ़ोल्डर को डाउनलोड करने से बचने के लिए आपको अपने प्रश्नों को विशेष रूप से बनाने की आवश्यकता है।

मार्क

0

wget -X directory_to_exclude [, other_directory_to_exclude] -r ftp://URL_ftp_server

 
SERVER 
    |-logs 
    |-etc 
    |-cache 
    |-public_html 
     |-images 
     |-videos (want to exclude) 
     |-files 
     |-audio (want to exclude) 

wget -X/public_html/वीडियो,/public_html/ऑडियो एफ़टीपी: सर्वर/public_html/*

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^