अगर -k निर्दिष्ट नहीं किया गया था, तो डाउनलोड के बाद HTML लिंक को सापेक्ष में परिवर्तित करें


32

-kविकल्प (या --convert-link) जैसे आदमी पेज का कहना है डाउनलोड समाप्त होने के, के बाद रिश्तेदार को अपने वेब पृष्ठों में लिंक में परिवर्तित कर देंगे:

डाउनलोड पूरा होने के बाद, दस्तावेज़ में लिंक को स्थानीय देखने के लिए उपयुक्त बनाने के लिए परिवर्तित करें। यह न केवल दृश्यमान हाइपरलिंक को प्रभावित करता है, बल्कि दस्तावेज़ का कोई भी हिस्सा जो बाहरी सामग्री से जुड़ता है, जैसे एम्बेडेड चित्र, स्टाइल शीट के लिंक, गैर-एचटीएमएल सामग्री के लिए हाइपरलिंक, आदि।

इसलिए, यदि मैंने निर्दिष्ट नहीं किया है, तो क्या मैं डाउनलोड के बाद फिर से -kचला सकता हूं wgetऔर इसे ठीक कर सकता हूं , और यदि हां, तो उचित आदेश क्या होगा? मेरा अनुमान है wget -c [previous options used] [url]और इसे उसी कार्यशील निर्देशिका में चलाएं, जब फ़ाइल डाउनलोड की गई थी।


1
आप निश्चित रूप से डाउनलोड के बाद फ़ाइलों को पोस्ट-प्रोसेस कर सकते हैं, लेकिन मुझे नहीं पता कि wgetक्या ऐसा होता है। इसके साथ प्रयास करने का आपका विचार -cएक अच्छा है। प्रयोग करने का समय!
क्वैक डिक्टोटेक

किसी भी संयोग से लिंक को परिवर्तित करने के लिए एक उपयोगिता है? विंडोज पर चल रहा है, वैसे ...
नथानिएल

perl... कोई पूर्व-लिखित स्क्रिप्ट नहीं है, लेकिन अगर मुझे एक DIY समाधान चाहिए था जो कि मैं उपयोग
करूं

ठीक है शुक्रिया। पर्ल स्थापित नहीं है और इसे हथियाने में बहुत लंबा समय लगेगा। सौभाग्य से, मैंने पाया कि काम कैसे करना चाहिए। मैंने एक उत्तर पोस्ट किया।
नथानिएल

btw, ActivePerl एक विंडोज़ पर्ल पोर्ट के रूप में है; यह काफी छोटा इंस्टॉलर है, और मुझे पूरा यकीन है कि अधिकांश CPAN मॉड्यूल इसके साथ काम करते हैं। Activestate.com/activeperl
क्विकोट

जवाबों:


23

हां, आप इसे कर सकते हैं wget। मैं कहता हूँ उपयोग करें wget -nc -k [previous options] [previous url]-ncनो-क्लोब है। आदमी पृष्ठ से:

जब −ncspeci, ed होता है, तो यह व्यवहार दबा दिया जाता है, और Wget fi le की नई प्रतियां डाउनलोड करने से इंकार कर देगा।

और -kविकल्प लिंक को परिवर्तित करता है। इसलिए, दूरस्थ सर्वर में wget खोदना शुरू कर देता है, आपके पास पहले से मौजूद सभी फाइलें देखता है, उन्हें फिर से डाउनलोड करने से मना करता है, और तब HTML लिंक को रिश्तेदार को संपादित करता है जब यह किया जाता है। अच्छा लगा।


3
नहीं, यह मेरे लिए काम नहीं करता है। वह पहली फ़ाइल डाउनलोड करता है (जैसे index.html), देखें कि पहले से ही एक स्टॉप डाउनलोड किया गया है। यदि आप पुनरावर्ती कार्य करना चाहते हैं, तो आपको टाइमस्टैम्प (-के) विकल्प का उपयोग करना होगा। तो wget को सभी हेडर से अनुरोध करना चाहिए कि फाइल नई है या नहीं।

12
GNU Wget 1.13.3 darwin11.1.0 पर बनाया गया है। एक ही समय में दोनों विकल्पों का उपयोग करने की कोशिश कर रहा हैBoth --no-clobber and --convert-links were specified,only --convert-links will be used.
लुडोविक क्रूट

2
क्या आपका प्रश्न बिना -k के नहीं पूछा गया?
बार्लोप

8
सी एफ @ लुडोविकटूट की टिप्पणी - 1.13 के --no-clobberसाथ काम नहीं करता --convert-links। देखें http://savannah.gnu.org/bugs/?31781 जानकारी के लिए।
डेविड मोल्स

1
: मामला किसी चिंताओं में, मैं wget 1.12 के लिए एक डोकर छवि का निर्माण किया hub.docker.com/r/berezovskyi/wget1.12
berezovskyi
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.