Cynnwys a llwytho rhestr dirprwy yn y prosiect Scrapy wedi’i weithredu
Cynnwys adnodd rhestr dirprwy Scrapy yn y dosbarthiad a’i lwytho yn ôl lleoliad y pecyn yn hytrach na’r cyfeiriadur gwaith a weithredwyd.
Nid yw ffeil dirprwy wrth ymyl clôn datblygu yn bresennol yn awtomatig ym mhecyn gweithredol y crwler. Mae dau dasg: cynnwys y beitiau yn y dosbarthiad, yna eu canfod yn y pecyn sydd wedi’i osod.
Ar gyfer prosiect Setuptools gyda crawl_app/resources/proxies.txt y tu mewn i’w becyn Python, gall cofnod pyproject.toml ei gynnwys:
[tool.setuptools.package-data]
crawl_app = ["resources/*.txt"]
Cyfunwch hynny â chyfluniad pecyn presennol y prosiect. Mae gan backend adeiladu gwahanol ei ryngwyneb cynnwys data ei hun.
Ar gyfer middleware sy’n gallu defnyddio llinynnau endpoint, gall Python 3.11+ ddarllen adnodd y pecyn yn uniongyrchol:
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()]
Defnyddiwch enw gwirioneddol y pecyn a dilyswch y fformat URL a ddisgwylir yn y darllenydd. Ar gyfer data endpoint cyhoeddus dosbarthadwy, defnyddiwch gyfeiriadau o’r rhestr dirprwy am ddim yn y protocol a’r fformat URL y mae’r middleware yn eu disgwyl. Nid yw’r chwiliad yn dibynnu ar gyfeiriadur gwaith presennol y defnyddiad.
Efallai y bydd gosodiad PROXY_LIST trydydd parti yn gofyn am lwybr system ffeiliau yn hytrach na’r llinynnau hyn. Wrth ddefnyddio importlib.resources.as_file ar gyfer y rhyngwyneb hwnnw, cadwch ei gyd-destun ar agor cyhyd ag y mae’r middleware angen y ffeil a echdynnwyd. Gall dychwelyd llwybr dros dro ar ôl cau’r cyd-destun golli’r adnodd.
Cadwch restrau cynhyrchu sy’n cario cyfrineiriau yn y storfa gyfrinachol neu ffurfweddu a fwriadwyd ar gyfer y defnyddiad. Mae data pecyn yn addas ar gyfer data endpoint dosbarthadwy, nid yn dybiaeth bod popeth a becynnir gyda chod yn aros yn breifat.