چرا تبدیل فیلترهای Adblock به Polipo بیش از regex نیاز دارد
هنگام ارزیابی تبدیل فیلترهای Adblock به Polipo، استثناها و بافت درخواست را حفظ کنید.
تبدیلکننده باید معنای یک قاعده را حفظ کند، نه فقط نویسههای آن را جابهجا کند. فهرست پالایش مرورگر میتواند به این بستگی داشته باشد که صفحه کدام منبع را بارگذاری میکند، به نوع منبع و به قواعد استثنا. فهرست مسدودسازی که تنها بر URL استوار است اطلاعات کمتری دارد.
در نصب موجود Polipo، راهنمای آن مدخلهای forbiddenFile را بهصورت نام دامنه یا عبارتهای منظم گستردهی POSIX تعریف میکند. بنابراین regexی که برای موتور Python ساخته شده، بهطور خودکار در آن فایل معتبر نیست.
با یک زیرمجموعهی اعلامشده شروع کنید
- الگوهای مسدودسازی بیقید URL را تنها پس از تعریف لنگرها و رفتار جداکنندهی آنها تبدیل کنید.
- قواعد استثنایی را که با @@ آغاز میشوند حفظ کنید. افزودن الگوهای آنها به یک فایل رد، معنایشان را برعکس میکند.
- قواعد دارای گزینههای بافتی، مانند محدودیتهای script یا دامنه، را بیرون از تبدیل مبتنی بر URL نگه دارید، مگر آنکه مقصد بتواند آن شرایط را بازنمایی کند.
- قواعد پنهانسازی عناصر را کنار بگذارید: انتخاب عناصر DOM یک صفحه سازوکار دیگری میخواهد.
حذف یک گزینهی پشتیبانینشده میتواند یک قاعدهی شرطی را به مسدودسازی بیقید گسترش دهد. این قواعد نادیدهگرفتهشده را گزارش کنید، بهجای آنکه بیصدا ادعای تبدیل کامل کنید.
بستهی تاریخی adblockparser میتواند زیرمجموعهای از قواعد Adblock Plus را تجزیه و ارزیابی کند. README آن قواعد نادیدهگرفتهشدهی پنهانسازی عناصر، تطبیق وابسته به گزینه و محدودیتهای دیگر را مستند میکند؛ مخزن آن در 24 ژوئن 2026 بایگانی شد. خروجی آن را چیزی برای سنجش در برابر موتور مقصد بدانید، نه وعدهی تبدیل وفادار کل فهرست.
دید پروکسی را در نظر بگیرید
در تونلهای معمولی HTTPS پالایش تونل Polipo نام میزبان و درگاه را میبیند، نه مسیر رمزگذاریشدهی URL را. فایل forbiddenTunnelsFile آن سطح سیاست جداگانهای است. عبارتی که برای مسیر بینقص ترجمه شده باشد باز هم نمیتواند با محتوایی که پروکسی هرگز نمیبیند مطابقت کند.
زیرمجموعهی حفظشده را مستند کنید و هنگام ارزیابی یک تبدیل، هم مسدودسازیهای موردنظر و هم استثناهای موردنظر را بررسی کنید. بارگذاری فایل تنها پذیرش نحو را ثابت میکند، نه پالایش همارز را.