एक अलग डोमेन पर wget डाउनलोड पेज संसाधन करें


16

जब आप अपने संसाधनों को किसी अन्य डोमेन, (डोमेन B) पर रखते हैं तो आप पूरी साइट (डोमेन ए) को डाउनलोड करने के लिए कैसे उपयोग करते हैं?
मैंने कोशिश की:
wget -r --level=inf -p -k -E --domains=domainA,domainB http://www.domainA


वाह! इस समय के बाद कोई नहीं?
पारस

कारण यह है कि काम नहीं करता है क्योंकि इसका उपयोग --domainsस्वयं चालू नहीं होता है --span-hosts। जोड़ने --span-hostsसे समस्या हल हो जाती। : |
परसा

जवाबों:


14
wget --recursive --level=inf --page-requisites --convert-links --html-extension \
     --span-hosts=domainA,domainB url-on-domainA

अद्यतन करें: मुझे याद है कि ऊपर की कमान ने मेरे लिए अतीत में काम किया था (जो कि 2010 था और मैं तब विंडोज के लिए जीएनयू टूल्स का उपयोग कर रहा था ); हालाँकि मुझे इसे तब बदलना पड़ा जब मैं आज इसका इस्तेमाल करना चाहता था:

wget --recursive --level=inf --page-requisites --convert-links \
     --adjust-extension --span-hosts --domains=domainA,domainB domainA

उसके लिए आशुलिपि होगी: wget -rEDpkH -l inf domainA,domainB domainA

  • -r = --recursive
  • -l <depth> = --level=<depth>
  • -E = --adjust-extension
  • -p = --page-requisites
  • -K = --backup-converted
  • -k = --convert-links
  • -D <domain-list> = --domain-list=<domain-list>
  • -H = --span-hosts
  • -np = --no-parent
  • -U <agent-string> = --user-agent=<agent-string>

ग्नू विग मैनुअल: https://www.gnu.org/software/wget/manual/wget.html


मुझे मिलता है: wget: --span-मेजबान: domainA,domainB'; use 'या' बंद 'पर अमान्य बूलियन । पर बदलने के बाद, यह काम नहीं करता है।
मैथ्यू फ्लेशेन

@MatthewFlaschen मैंने यहाँ क्या लिखा है, मेरे लिए काम किया। क्या आप अपने द्वारा उपयोग किए गए तर्क प्रदान कर सकते हैं?
परसा

मेरे पास सटीक कमांड नहीं है जिससे मैं पहले भागा हूं। हालाँकि, मेरे पास एक ही समस्या है: wget --recursive --level=inf --page-requisites --convert-links --html-extension --span-hosts=example.org,iana.org example.org मैं डेबियन पर GNU Wget 1.13.4 का उपयोग कर रहा हूं।
मैथ्यू फ्लैशेन

3
कोशिश करो --span-hosts --domains=example.org,iana.org- मुझे लगता है कि --span-hostsएक बूलियन होने की जरूरत है, और फिर आप --domainsयह निर्दिष्ट करने के लिए उपयोग करते हैं कि कौन से मेजबानों को स्पैन करना है।
एरिक मिल

कॉनक्लोन, -स्पैन-होस्ट्स 1.12 से बुलियन है और बाद में, मुझे यह नहीं पता था। @MatthewFlaschen, मैंने जवाब अपडेट किया। वैसे, यह अभी भी 1.11 और उससे पहले काम करेगा, यदि आप विंडोज के लिए जीएनयू टूल्स का उपयोग कर रहे हैं।
परसा

1

wget --recursive --level = inf --page-requisites --convert-links - html-extension -rH -DdomainA, domainB domainA


यह आंशिक रूप से काम करता है। हालाँकि, किसी कारण से, यह काम नहीं करता है यदि URL (अंत में) एक रीडायरेक्ट है। इसके अलावा, यह लिंक भी डाउनलोड करता है, न केवल पृष्ठ अपेक्षित। इसके अलावा, -r और --recursive समान हैं।
मैथ्यू फ्लैशेन

0
wget --page-requisites --convert-links --adjust-extension --span-hosts --domains domainA,domainB domainA

आपको robots.txt को अनदेखा करने की आवश्यकता हो सकती है (ध्यान दें, यह सेवा की कुछ शर्तों का उल्लंघन हो सकता है, और आपको आवश्यक न्यूनतम डाउनलोड करना चाहिए)। Https://www.gnu.org/software/wget/manual/wget.html#Robot-Exclusion देखें ।


-1

HTTrack का उपयोग करने पर विचार करें । यह अन्य विकल्प है जब wget की तुलना में अन्य डोमेन पर सामग्री क्रॉल करते हैं। उपयोग के साथ wsp-span-host, --domains और --accept जहां मेरी जरूरतों के लिए अपर्याप्त है लेकिन HTTrack ने काम किया। मुझे याद है कि अन्य डोमेन पर पुनः दिशाओं की सीमा निर्धारित करने से बहुत मदद मिली।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.