2013-02-15 2 views
0

제 3 자 팝업 광고를 차단하는 브라우저 용 확장 프로그램을 광고 차단기의 일부로 구현하고 싶습니다. 그러나 나는 어디에서 시작해야할지 모른다. 누군가가 웹 컨텐트를 필터링하는 것에 대해 더 많은 것을 배우기 위해 사용할 수있는 참고 자료를 가르쳐 줄 수 있습니까? 미리 감사드립니다. 웹 콘텐츠 필터링과 같은 광고 차단기에 대한 참고 자료

난 그냥 당신이 아마 발견 링크에 당신을 밀어 싫어하지만 당신이 정말로 필요로하는 모든 것을 여기에
+0

어떤 브라우저를 사용하십니까? 그들은 모두 다르다. – duskwuff

+0

Chrome을 사용하는 것이 좋습니다. 그러나 어떤 문서가 시작되기를 원합니다. – Ashwin

답변

1

: 당신이 그것을 읽을 시간이 걸릴 경우

http://developer.chrome.com/extensions/index.html

당신은 확장이 얼마나 이해할 수있을 겁니다 브라우저에 내장되어 있습니다. 당신은 충분히 읽을 경우이 절을 찾을 수 있습니다 :

http://developer.chrome.com/extensions/content_scripts.html

당신이 탭에 자바 스크립트를 삽입하고 플러그인의 맥락 대 페이지의 컨텍스트를 실행할 수있는 방법을 자세히 설명합니다.

리소스는 매우 자세합니다. 리소스를 읽어야합니다.


없이 귀하의 코멘트, 후속합니다. 모든 브라우저 환경은 다르게 구성되어 있으므로 목표가 같더라도 동일한 문제에 대해 다른 접근 방식을 취해야합니다.

나는 그것을 보는 방법에는 이것을 (높은 수준에서)하는 2 가지 방법이있다. 전송이 멈추지 않도록하거나, 페이지가로드 된 후 페이지에서 소급 적으로 요소를 제거하십시오.

전송을 중지하면 바이트가 컴퓨터 나 적어도 페이지에 도달하지 않으므로 많은 드라이브 바이 악용을 막아야하므로 더 좋습니다.

duskwuff가 설명했듯이 Chrome에는 요청을 가로 채고 그 시점에 해당 결정을 내릴 수있게 해주는 API가 있습니다. IE는 크롬보다 완전히 다른 API를 가지므로 파이어 폭스는 둘 다 다릅니다.

레트로 액티브 접근 방식을 사용하면 페이지에 대해 실행되고 광고를 제거하는 x 플랫폼 인 자바 스크립트를 구축 할 수 있습니다. 이 기능은 모든 브라우저의 탭에이 스크립트를 삽입/실행하는 고유 한 방법을 찾을 수있는 경우 "크로스 브라우저"로 작동하지만 해당 부분의 구현은 플랫폼에 고유하게 적용됩니다.

다른 브라우저는 다른 언어를 사용하기도합니다.

크롬은 대부분의 확장 프로그램에 JS/HTML5를 사용합니다. 네이티브 DLL을 사용할 수는 있지만 브라우저에 문제가 노출되지 않도록 이진 파일을 검사해야하기 때문에 확장 프로그램을 저장소에 제출할 때 더 정밀하게 처리됩니다. 왜냐하면 html/js 버전은 샌드 박스 내부에 있고 제대로 분리 될 수 있기 때문입니다.

파이어 폭스가 마지막으로 꽤 많이 바뀌었지만, 나는 그 변화를 최신으로 유지하지 못했다. 그러나 완전히 다른 야구 게임이다. 그 확장 프레임 워크는 작은 독립 실행 형 응용 프로그램 iirc를 구축 할 수있을 정도로 성숙했지만 틀렸을 수 있습니다.

IE는 주로 COM 확장입니다. 마지막으로 약간 변경되었을 수 있지만 브라우저의 COM 인터페이스와 상호 작용하는 .NET 또는 C++ .dll을 만들 가능성이 큽니다.

그래서 당신이 각 브라우저에 대해 크게 다르다 볼 수 있듯이, 다음 거기에 모든 이상치 (사파리/오페라/등)

의는 또한 크로스 플랫폼 및 따라 이들 브라우저를 많이 잊지 맙시다 문제를 어떻게 공격 하느냐에 따라 그 점을 고려해야합니다.


또한 주목할만한 가치가 크롬은 비동기 모델, 각 탭/플러그인 서로 "고립"살고, 기본적으로 비동기 메시징을 사용하여 통신한다. 이렇게하면 내부 콜백 메소드를 많이 사용해야하므로 브라우저와 근본적으로 다른 브라우저를 사용하는 일반적인 접근 방식을 사용할 수 있습니다.

+0

Aren과 @duskwuff 링크를 제공해 주셔서 감사합니다. 그것들을 들여다 볼 것이다. 한 가지 더 묻습니다. 크로스 브라우저 광고 차단기를 만드는 데 도움이되는 일반적인 규칙이나 개념이 없습니까? 그들 모두가 아주 다른가요? – Ashwin

+0

@Ashwin 확장 된 답변으로 규모를 결정한 산을 설명하는 데 도움이되기를 바랍니다. 불가능하지는 않지만 모든 브라우저에 플러그인을 만드는 것은 많은 작업입니다. 제 생각에는 크롬이 아마도 "가장 쉬운"플랫폼 일 것입니다.하지만 더 많은 한계가 있습니다. – Aren

+0

와우! 많은 일처럼 들립니다. 어쨌든, 포괄적 인 설명을 해주셔서 고맙습니다. 정말 도움이되었습니다. – Ashwin

1

Google 크롬의 경우 광고 차단의 기본은 chrome.webRequest API입니다.이 API는 진행중인 웹 요청에 대한 확장 정보를 제공하고 기내 요청을 가로 채거나 수정할 수있게합니다.