উইজেটের সাথে ডাউনলোড করার সময় "অন্যান্য" ডোমেনগুলি উপেক্ষা করবেন?


13

আমি www.website.com/XYZ এর অধীনে লিঙ্কগুলি ক্রল করতে চাই এবং কেবল www.website.com/ABC এর অধীন থাকা লিঙ্কগুলি ডাউনলোড করতে চাই।

আমি চাইলে ফাইলগুলি পেতে নিম্নলিখিত উইজেট কমান্ডটি ব্যবহার করছি:

wget  -I ABC -r -e robots=off --wait 0.25  http://www.website.com/XYZ

আমি যখন উইজেট ব্যবহার করি তখন এটি পুরোপুরি কাজ করে। তবে সমস্যাটি হ'ল আমাকে এই কমান্ডটি একটি সার্ভারে ব্যবহার করতে হবে যার উইজেট 1.11 রয়েছে এবং আমি যখন একই কমান্ডটি ব্যবহার করি তখন এটি অতিরিক্ত ডোমেনগুলি ডাউনলোড করে শেষ করে:

www.website.de 
www.website.it 
...

আমি কীভাবে এই সমস্যা এড়াতে পারি? আমি ব্যবহার করার চেষ্টা করেছি

--exclude domains=www.website.de,www.website.it

তবে এটি সেই ডোমেনগুলি ডাউনলোড করেই চলেছে।

এছাড়াও নোট করুন যেহেতু আমি যে --no-parentফাইলগুলি চাই সেগুলি উচ্চ স্তরের (যেহেতু ওয়েবসাইট / এক্সওয়াইজেডের অধীনে লিঙ্কগুলি ক্রল করে আমি ওয়েবসাইট.com/ABC এর অধীনে ফাইলগুলি চাই) ব্যবহার করতে পারি না ।

কোন ইঙ্গিত?


"নকল" ইউআরএল ব্যবহার করবেন না এবং এমন কোনও সাইটের ইউআরএল ব্যবহার করবেন না যা আপনার সমস্যার সাথে কোনও সম্পর্ক রাখে না। আপনার তালিকাভুক্ত ডোমেনগুলি কোনওভাবেই "সাবডোমেনস" নয়, সেগুলি কেবলমাত্র আলাদা ডোমেন, সম্ভবত একই সংস্থার অন্তর্ভুক্ত।
গুটবার্ট

এখানে কিছু ভুল আছে. wgetডিফল্টরূপে হোস্টগুলি অতিক্রম করা উচিত নয় এবং পুনরাবৃত্ত উইজেট করার সময় আপনার হোস্টগুলি অতিক্রম করার জন্য -H/ --span-hostsবিকল্পের প্রয়োজন । "www.website.com" "www.website.de" থেকে সম্পূর্ণ আলাদা হোস্ট।
jw013

@ গুন্টবার্ট দুঃখিত, আমি ভেবেছিলাম আসল ইউআরএল দেওয়াই সমস্যা হবে। অবশ্যই, আমি যে ওয়েবসাইটটি ক্রল করতে চাই তা ওয়েবসাইট ডটকম নয়। তবে যখন আমি উদাহরণ.কমকে হামাগুড়ি দিয়ে দেখি, তখন আমি উদাহরণ.ইটিও দেখতে পাই, উদাহরণস্বরূপ মূল ডিরেক্টরিতে (উদাহরণ.কমের সাথে একই স্তর)।
ব্যবহারকারী2779485

@ jw013 যেমন আমি উপরে বলেছি, যখন আমি কেবল www.example.com/x দিই তা www.example.de, www.example.it ক্রল করে। তবে এটি কেবলমাত্র 1.11 নয় 1.13 উইজেটের সাথে ঘটে So তাই আমি খুব বিভ্রান্ত।
ব্যবহারকারী2779485

এটি একটি বাগের মতো দেখাচ্ছে: উইজেট 1.11 এর আলাদা আচরণ করা উচিত নয়, -Hসর্বদা মূল হোস্টের বাইরে পুনরাবৃত্তি করা প্রয়োজন required নেই -D www.website.comসহায়তা প্রয়োজন?
গিলস 'অশুভ হওয়া বন্ধ করুন'

উত্তর:


5

এটা ভুল:

--exclude domains=www.website.de,www.website.it

সঠিক উপায়:

--exclude-domains www.website.de,www.website.it

উইজেট ম্যান পৃষ্ঠা থেকে:

--exclude-domains domain-list
      Specify the domains that are not to be followed.

তালিকাটি কোমাকে আলাদা করা উচিত নয়?
rubo77

@ রুবো 77 আপনি ঠিক বলেছেন, আমি এটি পরিবর্তন করেছি।
ড্যানিয়েল ওয়ার্নার

18

আপনি চেষ্টা করতে পারেন --max-redirect 0বা এর --domains example.com বিপরীতে ব্যবহার করতে পারেন --exclude-domains example.com

দেখা:

  -D,  --domains=LIST              comma-separated list of accepted domains.
       --exclude-domains=LIST      comma-separated list of rejected domains.
       --follow-tags=LIST          comma-separated list of followed HTML tags.
       --ignore-tags=LIST          comma-separated list of ignored HTML tags.
  -np, --no-parent                 don't ascend to the parent directory.
  --max-redirect                   maximum redirections allowed per page.

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