සංවර්ධන පිටපතක් අසල ඇති ප්‍රොක්සි ගොනුව crawler හි යෙදවූ පැකේජයේ ස්වයංක්‍රීයව නොපවතී. කාර්යයන් දෙකක් ඇත: බයිට් බෙදාහැරීමට ඇතුළත් කිරීම, පසුව ඒවා ස්ථාපිත පැකේජයේ සොයා ගැනීම.

තම Python පැකේජය තුළ crawl_app/resources/proxies.txt ඇති Setuptools ව්‍යාපෘතියක් සඳහා, pyproject.toml සටහනකට එය ඇතුළත් කළ හැක:

[tool.setuptools.package-data]
crawl_app = ["resources/*.txt"]

එය ව්‍යාපෘතියේ පවතින පැකේජ වින්‍යාසය සමඟ ඒකාබද්ධ කරන්න. වෙනත් build backend එකකට තමන්ගේම දත්ත ඇතුළත් කිරීමේ අතුරුමුහුණතක් ඇත.

endpoint තන්තු භාවිත කළ හැකි 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 ආකෘතිය වලංගු කරන්න. බෙදාහැරිය හැකි පොදු endpoint දත්ත සඳහා, middleware අපේක්ෂා කරන ප්‍රොටෝකෝලය සහ URL ආකෘතියෙන් නොමිලේ ප්‍රොක්සි ලැයිස්තුව හි ලිපින භාවිත කරන්න. සෙවීම යෙදවීමේ වත්මන් වැඩ කරන ඩිරෙක්ටරිය මත රඳා නොපවතී.

තෙවන පාර්ශව PROXY_LIST සැකසුමට මෙම තන්තු වෙනුවට ගොනු පද්ධති මාර්ගයක් අවශ්‍ය විය හැක. එම අතුරුමුහුණත සඳහා importlib.resources.as_file භාවිත කරන විට, middleware ට උපුටා ගත් ගොනුව අවශ්‍ය වන තාක් එහි සන්දර්භය විවෘතව තබන්න. සන්දර්භය වැසීමෙන් පසු තාවකාලික මාර්ගයක් ලබා දීමෙන් සම්පත අහිමි විය හැක.

අක්තපත්‍ර ඇති නිෂ්පාදන ලැයිස්තු යෙදවීම සඳහා අදහස් කළ රහස් හෝ වින්‍යාස ගබඩාවේ තබන්න. පැකේජ දත්ත බෙදාහැරිය හැකි endpoint දත්ත සඳහා සුදුසු ය, කේතය සමඟ බැඳුණු සියල්ල පෞද්ගලිකව පවතී යැයි උපකල්පනය නොවේ.

අදාළ ලිපි