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.

Erthyglau cysylltiedig