Орналастырылған Scrapy жобасында прокси тізімін қосу және жүктеу
Scrapy прокси тізімінің ресурсын таратуға қосыңыз және оны орналастырылған жұмыс каталогының орнына пакет орны бойынша жүктеңіз.
Әзірлеу клонының жанындағы прокси файлы 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 деректеріне жарайды, кодпен бірге бумаланғанның бәрі құпия болып қалады деген болжамға емес.