এটা ডিপ্লয় কৰা Scrapy প্ৰকল্পত প্ৰক্সি তালিকা অন্তৰ্ভুক্ত আৰু লোড কৰক
Scrapy প্ৰক্সি তালিকা সম্পদ ডিষ্ট্ৰিবিউশনত অন্তৰ্ভুক্ত কৰক আৰু ডিপ্লয় কৰা কৰ্ম ডাইৰেক্টৰিৰ সলনি পেকেজ অৱস্থানৰ পৰা লোড কৰক।
বিকাশ ক্ল'নৰ কাষত থকা প্ৰক্সি ফাইলটো ক্ৰলাৰৰ ডিপ্লয় কৰা পেকেজত স্বয়ংক্ৰিয়ভাৱে নাথাকে। দুটা কাম আছে: বাইটবোৰ ডিষ্ট্ৰিবিউশনত অন্তৰ্ভুক্ত কৰা, তাৰ পিছত ইনষ্টল কৰা পেকেজত বিচাৰি উলিওৱা।
crawl_app/resources/proxies.txt তেওঁলোকৰ Python পেকেজৰ ভিতৰত থকা Setuptools প্ৰকল্পৰ বাবে, এটা pyproject.toml এন্ট্ৰিয়ে ইয়াক অন্তৰ্ভুক্ত কৰিব পাৰে:
[tool.setuptools.package-data]
crawl_app = ["resources/*.txt"]
ইয়াক প্ৰকল্পৰ বিদ্যমান পেকেজ কনফিগাৰেচনৰ সৈতে একত্ৰিত কৰক। বেলেগ বিল্ড বেকএণ্ডৰ নিজৰ ডাটা-অন্তৰ্ভুক্তি ইন্টাৰফেচ থাকে।
এণ্ডপইণ্ট ষ্ট্ৰিং গ্ৰহণ কৰিব পৰা middleware ৰ বাবে, Python 3.11+ এ পেকেজ সম্পদটো পোনপটীয়াকৈ পঢ়িব পাৰে:
from importlib.resources import files
text = files('crawl_app').joinpath('resources', 'proxies.txt').read_text(
encoding='utf-8'
)
proxy_urls = [line.strip() for line in text.splitlines() if line.strip()]
প্ৰকৃত পেকেজ নামটো ব্যৱহাৰ কৰক আৰু পঢ়োঁতাত প্ৰত্যাশিত URL ফৰ্মেট যাচাই কৰক। বিতৰণযোগ্য ৰাজহুৱা এণ্ডপইণ্ট ডাটাৰ বাবে, middleware ৰ প্ৰত্যাশিত প্ৰট'কল আৰু URL ফৰ্মেটৰ সৈতে বিনামূলীয়া প্ৰক্সি তালিকা ৰ পৰা ঠিকনা ব্যৱহাৰ কৰক। সন্ধানটো ডিপ্লয়মেণ্টৰ বৰ্তমান কৰ্ম ডাইৰেক্টৰিৰ ওপৰত নিৰ্ভৰ নকৰে।
তৃতীয় পক্ষৰ PROXY_LIST ছেটিঙে এই ষ্ট্ৰিংবোৰৰ পৰিৱৰ্তে ফাইলচিষ্টেম পথৰ প্ৰয়োজন হ'ব পাৰে। সেই ইন্টাৰফেচৰ বাবে importlib.resources.as_file ব্যৱহাৰ কৰোঁতে, middleware এ উলিওৱা ফাইলটোৰ প্ৰয়োজন যেতিয়ালৈকে ইয়াৰ প্ৰসংগ খোলা ৰাখক। প্ৰসংগ বন্ধ হোৱাৰ পিছত অস্থায়ী পথ ঘূৰাই দিলে সম্পদটো হেৰাই যাব পাৰে।
প্ৰমাণপত্ৰ থকা উৎপাদন তালিকাসমূহ ডিপ্লয়মেণ্টৰ উদ্দেশ্য কৰা গোপন বা কনফিগাৰেচন সংৰক্ষণত ৰাখক। পেকেজ ডাটা বিতৰণযোগ্য এণ্ডপইণ্ট ডাটাৰ বাবে উপযুক্ত, কিন্তু ক'ডৰ সৈতে বান্ধি থোৱা সকলো ব্যক্তিগত হৈ থাকে বুলি ধাৰণা নহয়।