উইজেটের সাহায্যে একটি একক ওয়েব পৃষ্ঠা (পটভূমি চিত্র সহ) সংরক্ষণ করুন


73

রেফারেন্সের জন্য আমি একক ওয়েব পৃষ্ঠাগুলি (পুনরাবৃত্তভাবে নয়, পুরো সাইটগুলি নয়) সংরক্ষণ করতে উইজেট ব্যবহার করতে চাই। অনেকটা ফায়ারফক্সের "ওয়েব পৃষ্ঠা, সম্পূর্ণ" এর মতো।

আমার প্রথম সমস্যাটি হ'ল: সিএসএসে উল্লিখিত পটভূমি চিত্রগুলি সংরক্ষণ করার জন্য আমি উইজেট পেতে পারি না। এমনকি যদি এটি ব্যাকগ্রাউন্ড চিত্রের ফাইলগুলি সংরক্ষণ করে তবে আমার মনে হয় না - কনভার্ট-লিঙ্কগুলি সিএসএস ফাইলে ব্যাকগ্রাউন্ড-চিত্রের URL গুলি স্থানীয়ভাবে সংরক্ষিত ব্যাকগ্রাউন্ড চিত্রগুলিতে নির্দেশ করে। ফায়ারফক্সেরও একই সমস্যা।

আমার দ্বিতীয় সমস্যাটি হ'ল: যদি পৃষ্ঠায় চিত্রগুলি থাকে তবে আমি সংরক্ষণ করতে চাই যা অন্য সার্ভারে হোস্ট করা আছে (বিজ্ঞাপনগুলির মতো) এইগুলি অন্তর্ভুক্ত করা হবে না। --span- হোস্টগুলি নীচের লাইনের সাহায্যে সমস্যাটি সমাধান করবে বলে মনে হচ্ছে না।

আমি ব্যাবহার করছি: wget --no-parent --timestamping --convert-links --page-requisites --no-directories --no-host-directories -erobots=off http://domain.tld/webpage.html


1
ঠিক একই রেখায় (উইজেট - নো-প্যারেন্ট - টাইমস্ট্যাম্পিং - কনভার্ট-লিংক - পৃষ্ঠা-প্রয়োজনীয়তা - কোনও ডিরেক্টরি - নো-হোস্ট-ডিরেক্টরি -ইরোবটস = ডোমেন.tld অফ) প্রকৃতপক্ষে উল্লিখিত পটভূমি চিত্রগুলি সংরক্ষণ করে সিএসএস 1.12 আপডেট করার পরে। ম্যানুয়ালটিতে বলা হয়েছে: "এইচটিএমএল ইউআরএল সহ উইজেট প্রদত্ত ইউআরএল থেকে এইচটিএমএল বা সিএসএস পুনরুদ্ধার করে এবং পার্স করে, ডকুমেন্টকে যে ফাইলগুলি পুনরায় উদ্ধার করে তা হ'রেফ বা এসসিআর, অথবা সিএসএস ইউরি মানগুলি নির্দিষ্ট করে 'ইউআরএল ()' ব্যবহার করে নির্দিষ্ট করে দেওয়া হয় স্বরলিপি। " দ্বিতীয় সমস্যাটি এখনও সমাধান করা দরকার
ব্যবহারকারী 14124

উত্তর:


106

থেকে নয় Wget- man পৃষ্ঠা :

প্রকৃতপক্ষে, একটি একক পৃষ্ঠা এবং তার প্রয়োজনীয় সমস্তগুলি ডাউনলোড করার জন্য (সেগুলি পৃথক ওয়েবসাইটে উপস্থিত থাকলেও) এবং স্থানীয়ভাবে লটটি সঠিকভাবে প্রদর্শিত হচ্ছে কিনা তা নিশ্চিত করতে এই লেখক '-p' ছাড়াও কয়েকটি বিকল্প ব্যবহার করতে পছন্দ করেন:

wget -E -H -k -K -p http://www.example.com/

এছাড়াও robots.txtআপনি যুক্ত করতে নিষেধ করা হয়-e robots=off


দেখে মনে হচ্ছে এটি নিখুঁত ইউআরএলগুলিতে কেবল জেএস এবং সিএসএস পুনর্লিখন করছে
গ্রেগ ডিন

1
কিছুই নয়, এটি ছিল রোবটস। টেক্সট আমাকে কার্যতালিকা সহ উত্তর আপডেট করতে অস্বীকার করছে
গ্রেগ ডিন

19
সম্প্রসারণ করা হয়েছে:wget --adjust-extension --span-hosts --convert-links --backup-converted --page-requisites [url]
স্যাম

4
বা আরও ভাল এখনও wget --recursive --no-clobber --page-requisites --html-extension --convert-links --restrict-file-names=windows[url]
পেটাহ

@ {ইটা: আমি আপনার যুক্তি দিয়ে আপনার আদেশটি চেষ্টা করেছি, এটি নির্দিষ্ট করা ছাড়াও অন্যান্য ওয়েবপৃষ্ঠাগুলি ডাউনলোড করবে।
টিম

7

wgetকমান্ড বিকল্প উপলব্ধ করা হয় --mirror, যা একই জিনিস আছে:

$ wget -r -N -l inf --no-remove-listing

আপনি -xহোস্টের নাম সহ সাইটের জন্য একটি সম্পূর্ণ ডিরেক্টরি শ্রেণিবদ্ধতা তৈরি করতেও পারেন ।

আপনি wgetতবে এটির সর্বাধিক নতুন সংস্করণটি ব্যবহার না করা হলে আপনি এটি সন্ধান করতে পারবেন না ।


1
এটি সম্ভবত পুরো ওয়েবসাইটটি এর সাব-url- র সাথে ক্রল করবে
4253wyerg4e

2

মনে হচ্ছে wgetএবং ফায়ারফক্স সেগুলি ডাউনলোডগুলিতে অন্তর্ভুক্ত করার জন্য লিঙ্কগুলির জন্য সিএসএস পার্স করছে না। আপনি যা করতে পারেন তা উইজেট করে এবং আপনি মিস করা ফাইলগুলির তালিকা তৈরি করতে ডাউনলোড করা ফাইলগুলিতে যে কোনও সিএসএস বা জাভাস্ক্রিপ্ট থেকে লিঙ্ক নিষ্কাশন স্ক্রিপ্ট করে আপনি এই সীমাবদ্ধতার আশপাশে কাজ করতে পারেন। তারপরে wgetসেই লিঙ্কগুলির তালিকার দ্বিতীয় রানটি যা মিস করা হয়েছিল তা দখল করতে পারে ( -iফাইলের তালিকা URL গুলি নির্দিষ্ট করার জন্য পতাকা ব্যবহার করুন )।

আপনি যদি পার্ল পছন্দ করেন তবে সিপিএএন-তে একটি সিএসএস :: পার্সার মডিউল রয়েছে যা আপনাকে এই ফ্যাশনে লিঙ্কগুলি বের করার সহজ উপায় দিতে পারে।

নোটটি কী পৃষ্ঠায় প্রয়োজনীয় পৃষ্ঠা পেতে হবে তা নির্ধারণ করতে wgetকেবল নির্দিষ্ট html মার্কআপ ( href/ src) এবং CSS ইউরিস ( url()) পার্স করছে । আপনি ফায়ারফক্স অ্যাডোনস যেমন ডিওএম ইন্সপেক্টর বা ফায়ারবগ ব্যবহার করে চেষ্টা করতে পারেন যে আপনি যে তৃতীয় পক্ষের ছবিগুলি জাভাস্ক্রিপ্টের মাধ্যমে যুক্ত করা হচ্ছে না - যদি তা হয় তবে আপনাকে সেগুলি পেতে কোনও স্ক্রিপ্ট বা ফায়ারফক্স প্লাগইন নিতে হবে them খুব।


আমি আমার প্রথম পোস্টের জন্য মন্তব্যে বলেছি বলে মনে হয় এটি v1.12-এ স্থির হয়েছে। আমি এখনও জানি না যে অন্যান্য সার্ভারগুলিতে থাকা চিত্রগুলি কীভাবে অন্তর্ভুক্ত করা যায়।
ব্যবহারকারী 14124

হ্যাঁ, সিএসএসকে পার্সিং করা উইজেট v1.12-এ নতুন, এটি চেঞ্জলগের শীর্ষে রয়েছে: ফ্রেশমেট.net
কোয়াকোটা কোটসোট

তালিকায় -H বিকল্পটি যুক্ত করার চেষ্টা করুন। এটি - স্প্যান-হোস্টগুলির পক্ষে এবং বাহ্যিক হোস্টগুলি থেকে সামগ্রী ডাউনলোড করার অনুমতি দেয়।
মাইকেল

2

আমি অনুরূপ উদ্দেশ্যে ওয়েবটোগ্রাফি তৈরি করেছি: https://webjay.github.io/webtography/

এটি উইজেট ব্যবহার করে এবং আপনার গিটহাব অ্যাকাউন্টের একটি ভান্ডারটিতে সাইটটিকে পুশ করে।

আমি এই যুক্তি ব্যবহার:

--user-agent=Webtography
--no-cookies
--timestamping
--recursive
--level=1
--convert-links
--no-parent
--page-requisites
--adjust-extension
--max-redirect=0
--exclude-directories=blog

https://github.com/webjay/webtography/blob/master/lib/wget.js#L15-L26

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.