애드센스 광고 심사 센터의 광고 일괄 차단 하기(프로그램)

2023. 4. 7. 19:46 / 서기랑

 애드센스 광고의 차단은 신중하게 결정해야 하기 때문인지 일괄로 검토하는 버튼은 있어도 일괄로 차단하는 버튼은 존재하지 않는다.

 때문에 영어나 일본어 등 다른 나라의 언어로 된 해외 광고를 필터링하고 차단하려고 하면 일일이 차단을 클릭해야 하는데 전체를 한 번에 차단할 수 있는 방법은 없지만 특정 이미지를 찾아 클릭하는 프로그램을 만들면 화면에 보이는 광고를 쉽게 차단할 수는 있다.

목차 (Contents)

     

    애드센스 광고 심사 센터의 광고 일괄 차단 하기(프로그램)

    1. 프로그램 다운로드.

     아래는 파이썬으로 만든 간단한 프로그램이다.

     일단 다운로드하고 압축을 풀자.

     (기능은 없는데 패키지 몇 개를 썼더니 쓸데없이 용량이 크다.)

    dist.z01
    19.50MB
    dist.z02
    19.50MB
    dist.zip
    18.82MB

    2. 프로그램 실행.

     애드센스의 광고심사 센터 화면에서 차단하고자 하는 광고들을 필터링하여 화면에 띄우자.

     그 다음 프로그램을 실행하고 [이미지 클릭] 버튼을 누르면 화면에 보이는 광고들을 순서대로 차단할 것이다.

    같은 이미지 찾아 클릭 하기

    3. 프로그램 작동 방식.

     프로그램은 첨부된 이미지와 일치하는 이미지를 화면에서 찾아 마우스 커서를 이동하고 클릭하는 작동을 한다.

     첨부된 이미지는 광고심사 센터에서 광고를 차단하는 버튼의 이미지로 화면에 광고 차단 버튼 보이면 마우스 커서가 이동하여 클릭한다.

    구글 해외 광고 일관 차단

    4. 프로그램 코드.

     파이썬으로 간단히 만든 코드로 이를 응용하면 다른 이미지를 찾아 클릭하는 등의 작업을 하는 프로그램을 만들 수도 있다.

     아래는 프로그램의 코드이다.

     그다지 효율적인 코드는 아니기 때문에 필요하다면 적당히 수정해서 사용하는 것이 더 좋을 것이다.

    import pyautogui
    import tkinter as tk
    
    
    class Application(tk.Frame):
        def __init__(self, master=None):
            super().__init__(master)
            self.master = master
            self.master.title("seogilang")  # 창 상태 제목 변경
            self.button = None  # 버튼 속성 초기화
            self.textbox = None  # 텍스트 박스 속성 초기화
            self.pack()
            self.create_widgets()
            self.click_count = 0
            self.img_count = 0
            self.is_running = False
    
        def create_widgets(self):
            # 버튼 생성
            self.button = tk.Button(self)
            self.button["text"] = "이미지 클릭"
            self.button["command"] = self.click_image
            self.button.pack(side="top")
    
            # 텍스트 박스 생성
            self.textbox = tk.Text(self, height=10)
            self.textbox.pack(side="bottom")
    
        def click_image(self):
            self.click_count = 0
            if not self.is_running:
                self.is_running = True
                self.button.config(state="disabled")
                self.textbox.delete(1.0, tk.END)
                self.textbox.insert(tk.END, "이미지 찾기를 시작 합니다.\n")
    
                # 이미지 중심점 좌표를 찾아냄
                img_locations = list(pyautogui.locateAllOnScreen(
                    'imgck.jpg',
                    confidence=0.93
                ))
    
                if img_locations:
                    self.textbox.insert(tk.END, "이미지를 찾았습니다.\n")
                    self.img_count = len(img_locations)
    
                    for location in img_locations:
                        center_x, center_y = pyautogui.center(location)
                        self.click_count += 1
                        self.textbox.insert(tk.END, f"이미지를 {self.click_count}번 클릭합니다. (x:{center_x}, y:{center_y})\n")
                        pyautogui.moveTo(center_x, center_y)
                        pyautogui.click()
    
                    self.textbox.insert(tk.END, f"이미지를 총 {self.click_count}번 클릭했습니다.\n")
                    self.textbox.insert(tk.END, "이미지 찾기 작업이 종료되었습니다.\n")
                else:
                    self.textbox.insert(tk.END, "이미지를 찾을 수 없습니다.\n")
                    self.textbox.insert(tk.END, "이미지 찾기 작업이 종료되었습니다.\n")
    
                self.is_running = False
                self.button.config(state="normal")
            else:
                self.textbox.insert(tk.END, "작업이 이미 실행중입니다.\n")
    
    
    # Tkinter 창 생성
    root = tk.Tk()
    
    # 어플리케이션 생성
    app = Application(master=root)
    
    # 창 실행
    app.mainloop()
    

     

    그 외 내용

     이미지 파일은 별도로 빼놨기 때문에 다른 이미지로 교체하여 활용할 수도 있다.

     다만 기능 자체는 같은 이미지를 찾아 클릭하는 형태이기 때문에 원하는 기능이 있다면 위의 코드를 수정하여 사용해야 한다.