근데... 도메인이 자꾸 변하는 사이트는 어떡하지?
유명한 불법사이트들은 manatoki463.net manatoki464.net 이렇게 정부의 사이트 차단을 우회하기 위해 주기적으로 도메인의 숫자를 바꾸는데 이러다보면 광고차단이 뚫리는 경우를 볼 수 있음
그리고 광고차단기에는 당연히 이런 사이트에 대응하기 위한 문법이 있다
예를 들어 마나토끼의 저 초록색 부분의 빈공간의 선택자는
[style="margin-bottom: 20px;"].row.row-15 임(선택기나 개발자도구로 찍어보면 나온다)
만약 현재 마나토끼의 사이트 주소에 따라
manatoki467.net##[style="margin-bottom: 20px;"].row.row-15
이렇게 규칙을 넣으면 주소가 manatoki468.net으로 올라가는 순간 바로 뚫리겠지
이럴때 규칙 작성법은 n가지야
1. 도메인 없이 선택자만 규칙에 넣기
##[style="margin-bottom: 20px;"].row.row-15
이렇게 하면 위 규칙이 모든 사이트에 적용되면서 사이트 주소가 바뀌어도 대응됨. 문제는 마나토끼 이외에도 저 규칙이 적용돼서 다른 사이트에서 오차단 가능성이 있음(근데 위 선택자는 유니크해서 그럴 일은 없을 것 같다)
2. $domain 문법과 정규표현식 이용
[$domain=/^manatoki\d+.net/]##[style="margin-bottom: 20px;"].row.row-15
정규표현식을 모르겠다구? 어차피 앞의 도메인 숫자 바뀌는 사이트 정규표현식은 다 거기서 거기니까 위에서 문자만 바꾸면 돼
[$domain=/^tvwiki\d+.com/]###bannerList
이 문법은 애드가드와 ubo에서 지원함
3. $url 문법과 *(애스터리스크) 이용
manatoki467.net
위에서 467은 다른 숫자로 얼마든지 바뀔 수 있지? 이걸 그냥 *라는 걸로 퉁칠 수 있어(숫자가 아니라도 가능)
manatoki*.net
근데 이걸 그대로 넣으면 안되고(이건 유니콘 프로만 통함) 문법에 맞게 써줘야해. 일단 맨앞에 ||를 붙이고 맨 뒤에 ^를 붙여
||manatoki*.net^ ←이렇게 해서
이제 [$url=여기]에다가 넣으면
[$url=||manatoki*.net^]##[style="margin-bottom: 20px;"].row.row-15
완성이야. 이 문법은 오직 애드가드만 지원됨
좀 더 응용하면 디시에서 갤러리별로 다른 규칙을 적용한다든지 하는 식으로 사용 가능해
그렇다면 만약 사이트 뒤의 최상위도메인이 변하는 경우는? 이건 위에걸 몰라도 많이들 알거야
google.com google.co.jp google.co.kr → google.*
이런건 어케함? 주소숫자부분에서 숫자가 1씩 커짐
01.23 15:58##a[href='https://주소숫자.com']
##a[href^='https://주소']
01.23 17:092번에서 ## 두개랑 ### 세개 예시로 해놓은건 차이가 뭐임?? 3번에서 혹시 그냥 || manatoki*.net##[style="margin-bottom: 20px;"].row.row-15같이 넣으면 안통함?? 그리고 도메인이랑 url문법 무슨차이인지 물어봐도 됨??
01.23 16:40그리고 아이폰인데 1번 2번 3번 넣어도 차단은 안되던데 본문 방법으로 인터넷에서 찾아서 변환해서 시도해봐야되나? 몇화 밑에있는 빨간부분은 애드가드 차단기로 누르면 자꾸 다른 영어로 나와서 뭔가 싶은데.. 새로고침하고 차단할때마다 바뀌어서 사이트에서 어케 해놓은거 아닌가 싶기도 한데 알못이라 정확하진 않아서 이런건 혹시 어케 대응하심??
01.23 17:061. ## + #bannerList 임 / 안됨 / 모름
01.23 17:142. 3번방법은 아이폰에서 안됨 / 선택기 찍어봐도 모르겠으면 개발자도구
님이 말한 부분 선택자는 이거임
01.23 17:19##article > .row-10.row.basic-banner
보고 감잡으시길 바람
List-KR 필터 리스트에서도 이렇게 해야겠네요
01.23 18:06List-KR 필터 자체는 OS별로 잘 지정해놨으면서 이거는 왜 안 해놨나 했는데 진짜 몰랐던거 맞았노..
01.23 18:37https://adguard.com/kb/ko/general/ad-filtering/create-own-filters/#non-basic-domain-modifier
솔직히 여기에 기초인 ABP부터 애드가드 전용 문법까지 필터 작성법 싹 잘 정리돼있지만 한글화도 여태 안 돼있고 너무 길어서 간략하게 풀어써진 정보글도 필요하다 생각되는데 이런걸 유저가 직접 공부해가며 알아서 해야 한다는게 좀 아쉽긴 함
알고 있었는데 자주 안 읽어서 브라우저 확장에서는 안 될 줄 알았습니다
01.23 18:39https://github.com/AdguardTeam/Scriptlets/tree/master
01.23 18:49이제라도 해주면 다행이고 애드가드 전용 고급 문법도 깃허브에 설명돼있긴 한데 난이도도 있고 너무 방대함 무엇보다 DNS 필터링을 지원 안 하는 ubo에서도 DNS 광고 차단을 막는 애드쉴드에 대한 대책이 제대로 돼있는데 정작 주딱부터가 DNS 보호를 안 쓰면서 애드쉴드랑 맞다이 뜨고 있다보니 베이스 필터도 ubo에 다소 밀리는 실정이라 ubo 전용 고급 문법을 유저가 직접 가져와서 적용시켜야 하고 아직 일부가 호환 안 돼서 애드가드 전용 문법으로 바꾸려면 또 골치 아픈 문제도 있어서 조금이라도 보완되면 좋겠음
애초에 trusted scriptlet 지원이 uBO보다 AdGuard가 부족해서 애드쉴드는 유저스크립트로 처리하고 있습니다
01.23 18:57그리고, AG for iOS와 AG for Safari처럼 제한적인 애드블록 지원 환경 때문이기도 합니다
uBO와 AdGuard에 대해 더 궁금하신 점이 있으신가요?
애드가드에서 막히면 ubo 필터 복붙해와서 해결되는 경우가 있는데 잘은 모르겠지만 호환 안 되던 부분도 점차 고쳐지는듯 하고 여로모로 골치 아플거란 사실은 알고 있음 그냥 이 글처럼 위 두 링크에 대한 접근성이라도 더 좋아져서 유저들이 더 쉽게 필터 작성할 수 있게 됐으면 하는 바램임
01.23 19:20아이폰 환경에서 사파리 보호로 애드가드 필터랑, list kr 켜도 /^https:\/\/manatoki[0-9]+\.net\/tokinbtoki\// 이거 직접 사용자 필터로 넣지 않으면 광고차단 안되는데 확인해 줄 수 있음? Dns 보호도 켜진상태임 광고차단 너무 안돼서 저 코드 직접 찾아서 넣었는데 너무 불편함; 그리고 저거 입력해도 빈칸 나오는데 그것도 수정좀 해줄 수 있냐
01.24 01:44저거 직접 사파리 사용자 필터에 넣어도 4짤처럼 빈칸 생기는데 ㅈㄴ 크게나옴 사파리는
01.24 01:50Adguard for iOS 이슈에 대해 회사 Slack으로 대화해보겠습니다
01.24 22:17Adguard for iOS 이슈에 대해 한번 iPhone을 재부팅해보시겠어요?
01.24 22:29초기화하고 재설치도 같이 해봤는데 해결된듯? ㄳㄳ
01.25 16:45유니콘프로 개귀찮았는데 고맙다
02.11 00:52혹시 example숫자.example.com 이런형식이면 2번 domain문법때 +를 어디다 집어넣어야함??
04.15 22:43