ឯកសារប្រូកស៊ីនៅក្បែរក្លូនអភិវឌ្ឍន៍ មិនមានដោយស្វ័យប្រវត្តិនៅក្នុងកញ្ចប់ដាក់ពង្រាយរបស់ crawler ទេ។ មានការងារពីរ៖ បញ្ចូលបៃទៅក្នុងការចែកចាយ បន្ទាប់មករកពួកវាក្នុងកញ្ចប់ដែលបានដំឡើង។

សម្រាប់គម្រោង Setuptools ដែលមាន crawl_app/resources/proxies.txt ក្នុងកញ្ចប់ Python របស់វា ធាតុ pyproject.toml អាចបញ្ចូលវាបាន៖

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

បញ្ចូលវាជាមួយការកំណត់កញ្ចប់ដែលមានស្រាប់របស់គម្រោង។ build backend ផ្សេងមានចំណុចប្រទាក់បញ្ចូលទិន្នន័យផ្ទាល់ខ្លួន។

សម្រាប់ middleware ដែលអាចប្រើខ្សែអក្សរ endpoint បាន 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 សាធារណៈដែលអាចចែកចាយបាន សូមប្រើអាសយដ្ឋានពី បញ្ជីប្រូកស៊ីឥតគិតថ្លៃ ក្នុងពិធីការ និងទ្រង់ទ្រាយ URL ដែល middleware រំពឹងទុក។ ការស្វែងរកមិនអាស្រ័យលើថតការងារបច្ចុប្បន្នរបស់ការដាក់ពង្រាយទេ។

ការកំណត់ PROXY_LIST ពីភាគីទីបីអាចត្រូវការផ្លូវប្រព័ន្ធឯកសារ ជំនួសឱ្យខ្សែអក្សរទាំងនេះ។ នៅពេលប្រើ importlib.resources.as_file សម្រាប់ចំណុចប្រទាក់នោះ សូមរក្សាបរិបទរបស់វាឱ្យបើក ដរាបណា middleware ត្រូវការឯកសារដែលបានដកស្រង់។ ការត្រឡប់ផ្លូវបណ្តោះអាសន្នបន្ទាប់ពីបិទបរិបទអាចបាត់បង់ធនធាន។

រក្សាបញ្ជីផលិតកម្មដែលមានព័ត៌មានសម្ងាត់ក្នុងឃ្លាំងសម្ងាត់ ឬការកំណត់ដែលបានបម្រុងទុកសម្រាប់ការដាក់ពង្រាយ។ ទិន្នន័យកញ្ចប់សមស្របសម្រាប់ទិន្នន័យ endpoint ដែលអាចចែកចាយបាន មិនមែនជាការសន្មតថាអ្វីៗដែលខ្ចប់ជាមួយកូដនៅតែឯកជននោះទេ។

អត្ថបទពាក់ព័ន្ធ