ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 오토핫키] 네이버 카페 글 작성자의 아이디 따기
    오토핫키/프로그램 배포 2022. 11. 12. 02:40

    https://open.kakao.com/me/apsalman


    https://www.youtube.com/channel/UC6hW-NrL9CxDQd2IzWbekYA


    https://apsalman.tistory.com/84

     

    오토핫키 연습일지 #14] N 카페 회원 아이디 이메일 추출

    https://apsalman.tistory.com/75 https://www.youtube.com/channel/UC6hW-NrL9CxDQd2IzWbekYA (크롤링 및 파싱 연습일 뿐 악용할 생각은 전혀 없음을 밝힙니다.) https://apsalman.tistory.com/66 오토핫키] 네이버 카페 글 작성자의

    apsalman.tistory.com

    저격으로 아이디 따는게 아닌 통으로 따기


     

    이 씨발새끼가?

    누가 네이버 카페에 질문을 한다.

     

    댓글을 열심히 달아줬다. 고맙다는 댓글을 바라고 답변을 단 것은 아니지만 나중에 봤을 때 게시글이 삭제되면 그 기분이 진짜 개 ㅈ같다

    진짜 개새끼들이다

    글을 지우는 놈들은 그렇게 생각할 수 있다.

    " 아니 내가 질문한 나의 글인데 삭제하는 것도 내 맘이지 ^^ "

     

    허허... 그래 뭐 어쩔 수 없지.... 받을 거 다 받았으니 입 싹 닫는 천하의 씹새끼들이 세상에는 너무나 많다.

    하지만 괜찮다. 우리는 카페 매니저님들에게 간곡하게 부탁을 하면 된다. 물론 증거가 있어야지

     

    형은 다 알 수가 있어요~ 다 알 수가 있는데?

     

    작성자 옆에 1:1 채팅을 누르면
    이렇게 아주 찰나의 순간에 아이디가 떴다가 암호화된다.

    이 아이디만 복사해주면 되겠군

     

    #SingleInstance Force
    
    titleasdf := "네이버 카페 - Chrome"
    ModernBrowsers := "ApplicationFrameWindow,Chrome_WidgetWin_0,Chrome_WidgetWin_1,Maxthon3Cls_MainFrm,MozillaWindowClass,Slimjet_WidgetWin_1"
    LegacyBrowsers := "IEFrame,OperaWindowClass"
    
    Loop {
    	Loop {
    		if(WinActive(titleasdf)) {
    			if(InStr(GetActiveBrowserURL(), "/members/")) {
    				RegExMatch(GetActiveBrowserURL(), "/members/(.*?)$", Res)
    				Clipboard := Res1
    				TrayTip, 카페 아이디 복사, % Res1 " 가 클립보드에 저장됨",3, 1
    				WinKill, % titleasdf
    				Break
    			}
    		}
    	}
    }
    return
    
    GetActiveBrowserURL() {
    	global ModernBrowsers, LegacyBrowsers
    	WinGetClass, sClass, A
    	If sClass In % ModernBrowsers
    		Return GetBrowserURL_ACC(sClass)
    	Else If sClass In % LegacyBrowsers
    		Return GetBrowserURL_DDE(sClass) ; empty string if DDE not supported (or not a browser)
    	Else
    		Return ""
    }
    
    ; "GetBrowserURL_DDE" adapted from DDE code by Sean, (AHK_L version by maraskan_user)
    ; Found at http://autohotkey.com/board/topic/17633-/?p=434518
    
    GetBrowserURL_DDE(sClass) {
    	WinGet, sServer, ProcessName, % "ahk_class " sClass
    	StringTrimRight, sServer, sServer, 4
    	iCodePage := A_IsUnicode ? 0x04B0 : 0x03EC ; 0x04B0 = CP_WINUNICODE, 0x03EC = CP_WINANSI
    	DllCall("DdeInitialize", "UPtrP", idInst, "Uint", 0, "Uint", 0, "Uint", 0)
    	hServer := DllCall("DdeCreateStringHandle", "UPtr", idInst, "Str", sServer, "int", iCodePage)
    	hTopic := DllCall("DdeCreateStringHandle", "UPtr", idInst, "Str", "WWW_GetWindowInfo", "int", iCodePage)
    	hItem := DllCall("DdeCreateStringHandle", "UPtr", idInst, "Str", "0xFFFFFFFF", "int", iCodePage)
    	hConv := DllCall("DdeConnect", "UPtr", idInst, "UPtr", hServer, "UPtr", hTopic, "Uint", 0)
    	hData := DllCall("DdeClientTransaction", "Uint", 0, "Uint", 0, "UPtr", hConv, "UPtr", hItem, "UInt", 1, "Uint", 0x20B0, "Uint", 10000, "UPtrP", nResult) ; 0x20B0 = XTYP_REQUEST, 10000 = 10s timeout
    	sData := DllCall("DdeAccessData", "Uint", hData, "Uint", 0, "Str")
    	DllCall("DdeFreeStringHandle", "UPtr", idInst, "UPtr", hServer)
    	DllCall("DdeFreeStringHandle", "UPtr", idInst, "UPtr", hTopic)
    	DllCall("DdeFreeStringHandle", "UPtr", idInst, "UPtr", hItem)
    	DllCall("DdeUnaccessData", "UPtr", hData)
    	DllCall("DdeFreeDataHandle", "UPtr", hData)
    	DllCall("DdeDisconnect", "UPtr", hConv)
    	DllCall("DdeUninitialize", "UPtr", idInst)
    	csvWindowInfo := StrGet(&sData, "CP0")
    	StringSplit, sWindowInfo, csvWindowInfo, `" ;"; comment to avoid a syntax highlighting issue in autohotkey.com/boards
    	Return sWindowInfo2
    }
    
    GetBrowserURL_ACC(sClass) {
    	global nWindow, accAddressBar
    	If (nWindow != WinExist("ahk_class " sClass)) ; reuses accAddressBar if it's the same window
    	{
    		nWindow := WinExist("ahk_class " sClass)
    		accAddressBar := GetAddressBar(Acc_ObjectFromWindow(nWindow))
    	}
    	Try sURL := accAddressBar.accValue(0)
    	If (sURL == "") {
    		WinGet, nWindows, List, % "ahk_class " sClass ; In case of a nested browser window as in the old CoolNovo (TO DO: check if still needed)
    		If (nWindows > 1) {
    			accAddressBar := GetAddressBar(Acc_ObjectFromWindow(nWindows2))
    			Try sURL := accAddressBar.accValue(0)
    		}
    	}
    	If ((sURL != "") and (SubStr(sURL, 1, 4) != "http")) ; Modern browsers omit "http://"
    		sURL := "http://" sURL
    	If (sURL == "")
    		nWindow := -1 ; Don't remember the window if there is no URL
    	Return sURL
    }
    
    ; "GetAddressBar" based in code by uname
    ; Found at http://autohotkey.com/board/topic/103178-/?p=637687
    
    GetAddressBar(accObj) {
    	Try If ((accObj.accRole(0) == 42) and IsURL(accObj.accValue(0)))
    		Return accObj
    	Try If ((accObj.accRole(0) == 42) and IsURL("http://" accObj.accValue(0))) ; Modern browsers omit "http://"
    		Return accObj
    	For nChild, accChild in Acc_Children(accObj)
    		If IsObject(accAddressBar := GetAddressBar(accChild))
    			Return accAddressBar
    }
    
    IsURL(sURL) {
    	Return RegExMatch(sURL, "^(?<Protocol>https?|ftp)://(?<Domain>(?:[\w-]+\.)+\w\w+)(?::(?<Port>\d+))?/?(?<Path>(?:[^:/?# ]*/?)+)(?:\?(?<Query>[^#]+)?)?(?:\#(?<Hash>.+)?)?$")
    }
    
    ; The code below is part of the Acc.ahk Standard Library by Sean (updated by jethrow)
    ; Found at http://autohotkey.com/board/topic/77303-/?p=491516
    
    Acc_Init()
    {
    	static h
    	If Not h
    		h:=DllCall("LoadLibrary","Str","oleacc","Ptr")
    }
    Acc_ObjectFromWindow(hWnd, idObject = 0)
    {
    	Acc_Init()
    	If DllCall("oleacc\AccessibleObjectFromWindow", "Ptr", hWnd, "UInt", idObject&=0xFFFFFFFF, "Ptr", -VarSetCapacity(IID,16)+NumPut(idObject==0xFFFFFFF0?0x46000000000000C0:0x719B3800AA000C81,NumPut(idObject==0xFFFFFFF0?0x0000000000020400:0x11CF3C3D618736E0,IID,"Int64"),"Int64"), "Ptr*", pacc)=0
    	Return ComObjEnwrap(9,pacc,1)
    }
    Acc_Query(Acc) {
    	Try Return ComObj(9, ComObjQuery(Acc,"{618736e0-3c3d-11cf-810c-00aa00389b71}"), 1)
    }
    Acc_Children(Acc) {
    	If ComObjType(Acc,"Name") != "IAccessible"
    		ErrorLevel := "Invalid IAccessible Object"
    	Else {
    		Acc_Init(), cChildren:=Acc.accChildCount, Children:=[]
    		If DllCall("oleacc\AccessibleChildren", "Ptr",ComObjValue(Acc), "Int",0, "Int",cChildren, "Ptr",VarSetCapacity(varChildren,cChildren*(8+2*A_PtrSize),0)*0+&varChildren, "Int*",cChildren)=0 {
    			Loop %cChildren%
    				i:=(A_Index-1)*(A_PtrSize*2+8)+8, child:=NumGet(varChildren,i), Children.Insert(NumGet(varChildren,i-8)=9?Acc_Query(child):child), NumGet(varChildren,i-8)=9?ObjRelease(child):
    			Return Children.MaxIndex()?Children:
    		} Else
    			ErrorLevel := "AccessibleChildren DllCall Failed"
    	}
    }

    Ctrl + v 붙여넣기를 하면 아이디가 나옴

    22년 11월 11일 어떠한 비활성 클릭이나 제어없이 주소를 따는 법을 찾아내어 해당 라이브러리를 추가한 버전으로 수정함

    댓글