강좌 / 팁

소프트웨어 (ver 0.2) 크롬/엣지에서 URL 드래그 드롭으로 제목 얻기

2023.02.08 14:20

메리아 조회:1042 추천:12

편의성을 조금 넣어서 버전업했습니다.

파일은 글 끝부분이나 첨부파일에서 받으시면 됩니다.

ver 0.1.0 : 맨 처음 작성한 예제형 파일

ver 0.2.0 : 항상위, 조회방식2가지, 전체복사,전체삭제 버튼 추가

 

----------------------------------------------------------------------------

 

자료실에 올려야하나 생각했는데

일단 강좌/팁에 올려봅니다.

 

먼저 사용가능한 브라우저는 크롬과 엣지입니다.

(코드 긁어온 사이트에서는 파이어폭스 된다고 했는데, 파이어폭스가 이상하게 잘 안되더군요.

아무튼 크롬 베이스 신형 엣지와 크롬만 가능합니다)

 

제목짓기가 좀 애매한데,

간혹 웹서핑하다가 링크를 복사해서 제목과 함께 메모로 남기고 싶은 일이 꽤 있거든요.

(즐겨찾기로 해도 되지만, 즐겨찾기가 너무 많아질때)

그래서 간단히 드래그앤 드롭으로 제목과 주소를 긁어내는 초간단 프로그램입니다.

 

cs_chrome_URL_detector 예시.gif

 

 

 

대충 위와같이 동작합니다.

(잘 보시면 아시겠지만, 이미지로 된건 문자로 읽을수 없어 제목 부분이 빈값이 나옵니다.

다만, alt나 title 같은게 붙어있는 경우 그 값이 나옵니다

참고로 이미지의 경우 기본값은 이미지링크를 따는게 아니라, 이미지로 연결된 a태그 주소를 따는겁니다.

a태그가 없는 단순 이미지의 경우에는 이미지링크가 나오기도 합니다만, 안될때도 있네요.)

저렇게 긁어낸건 복사해서 메모장이나 어디 따로 저장하고 싶은곳에 복사해서 저장하시면 됩니다.

사실 원래 따로 메모장 프로그램을 웹베이스로 만들고 있었는데,

아무리해도 저 기능(x-moz-url 읽기)이 안돼서 검색하다보니, 닷넷에서 메모리 스트림으로 읽어오는 예제 있길래 만들었습니다.

(참고 : https://stackoverflow.com/questions/58312609/how-to-get-url-and-title-from-link-dragged-from-browser)

웹 보안 문제 때문인지 따로 닷넷으로 안쓰면 웹에서는 아무래도 불가능한가 보더라구요.

 

실행파일 : cs_chrome_URL_detector.exe

소스파일 : cs_chrome_URL_detector.rar ,  cs_chrome_URL_detector.zip  

              (zip파일만 쓰시는 분을 위해 zip으로도 압축함. 내용동일. zip rar 둘 중 하나만 받으면 됨.)

 

저는 제가 직접 만들었으니까 보안상 문제없는거 알지만

악성코드 같은게 걱정되시는 분들은 소스 같이 올리니까 직접 컴파일 가능한 분들은 컴파일해서 쓰셔도 됩니다.

VS2010으로 만들었으니 그 이후꺼라면 아무거나 다 사용 가능합니다.

 

사실 별로 대단한 내용도 아닙니다. 중요한건 아래 코드가 답니다.

간단하지만 저 개인적으로는 유용하고, 저처럼 유용하실 분들 있을까 해서 올려봅니다.

 

        private void txt_main_DragEnter(object sender, DragEventArgs e) {

            e.Effect = DragDropEffects.Copy;

        }

        private void txt_main_DragDrop(object sender, DragEventArgs e) {

            if(e.Data.GetDataPresent("text/x-moz-url"))    //Chrome, Firefox

            {

                MemoryStream data = (MemoryStream) e.Data.GetData("text/x-moz-url");

                string dataStr = Encoding.Unicode.GetString(data.ToArray());

                dataStr = dataStr.Substring(0, dataStr.Length - 1); // 마지막에 널문자 들어가서 제거함

                string[] parts = dataStr.Split(((char) 10));

                string result_str = "";

                result_str += "";

                result_str += Environment.NewLine;

                result_str += parts[1].ToString() + Environment.NewLine;

                result_str += parts[0].ToString() + Environment.NewLine;

                txt_main.AppendText(result_str);

            }

        }

 

 

 

------------------------------------------------------------------------------------------------------------

 

버전업 했습니다.

글 끝부분이나 첨부파일에서 0.2.0 버전을 받으시면 됩니다.

 

좀 더 편의성을 주고자

항상 위, 제목조회방법 2가지로 분리, 전체복사,전체삭제 버튼 등을 추가했습니다.

 

제목 조회방법이 어떻게 다른가에 대해서 설명하자면 일단 아래 이미지 보시면 감이 오실겁니다.

 

 

cs_chrome_URL_detector 예시 2.gif

 

즉시            : 기존방식대로 크롬에서 인식된 타이틀을 직접 가져옴

<title>조회 : 잡히는 주소를 토대로 사이트를 조회해서 <title>태그에서 제목을 가져옴.(노란색으로 변하는건 조회요청해서 진행중이란 표시)

 

각각 장단점이 있는데

즉시            : 바로 보이는 것을 가져올 수 있으나, 위 이미지에서 보듯이 내용이 일부 생략된 형태일때 생략된 부분을 받을 수 없음.

<title>조회 : 해당 주소에 전체 제목이 있는경우 받아올 수 있으나, 로그인이 필요한 경우 불가함. 또한 거꾸로 해당 주소에 제대로된 제목 없는 경우도 있음. 또한 winhttp 요청에 의한 방식이므로, 수십ms ~ 수초 가량 지연이 발생할 수 있음.

 

조회방법은 각각 장단점이 있으므로(물론 둘 다 안되는 경우도 많음),

필요에 따라 골라서 쓰세요.

 

 

실행파일 : cs_chrome_URL_detector_V0.2.0.exe

소스파일 : cs_chrome_URL_detector_V0.2.0.zip

 

 

번호 제목 글쓴이 조회 추천 등록일
[공지] 강좌 작성간 참고해주세요 gooddew - - -
4320 소프트웨어| 엑셀 제목표시줄에 파일 전체 경로 표시 [28] 지후빠 2678 29 04-02
4319 소프트웨어| 단순한 팝업 메뉴형 런처 PopSel (실컴,PE) [18] 지후빠 2449 26 03-30
4318 기 타| IPv6 전용 네트워크에서 윈도우 포럼 접속하기 네트워크빌 2004 2 03-27
4317 소프트웨어| 구글 캘린더로 매년 X월의 Y번째 요일에 반복 설정하기 asklee 936 2 03-26
4316 소프트웨어| [펌]VirtualBox 로컬 드라이브 연결하기 [2] 타천사둘리 1299 9 03-23
4315 윈 도 우| PC 나 노트북 종료시 전원차단 안 될 때 조치방법 [6] 타천사둘리 2868 6 03-21
4314 윈 도 우| Wifi 패스워드 (종료!!!) [27] kernel 6066 19 03-12
4313 소프트웨어| 배치파일로 2GB 이상 계산과 batch hybrid [7] 지후빠 1399 13 03-05
4312 소프트웨어| 팁: VirtualBox 7의 Windows 10/11에서 NVMe 드라이버 활성... [3] VᴇɴᴜꜱGɪ 1188 9 03-05
4311 윈 도 우| 구글 검색 결과를 가장한 리다이렉션 광고 링크 제거하기 (... [11] 오호라7 4073 25 02-26
4310 하드웨어| USB 3.0 과 2.4GHz 간섭 문제 해결 - 동글을 연장선연결 [8] 메리아 3003 12 02-25
4309 윈 도 우| 윈도우 업데이트 다운로드 및 설치 오류 조치 [6] 미스라 3619 5 02-17
4308 소프트웨어| (ver 0.2.3, url 파일기능) 크롬/엣지에서 URL 드래그 드롭... [7] 메리아 2909 10 02-16
4307 모 바 일| 뉴진스 음악에서 보컬만 추출하기? 이거 하나면 끝!!! | mp... toz21 1888 0 02-14
4306 윈 도 우| IE 강제 실행 스크립트 + 탭 여러개 열기 [6] 녹색조각 2641 14 02-14
4305 기 타| 파이어 폭스 무설치 만들기 [17] 슈머슈마 1560 9 02-12
4304 윈 도 우| 향상된 윈도우 자동 로그인 On/Off 스크립트 [6] zerojiddu 2732 13 02-11
4303 소프트웨어| 현존 최강 무료 동영상 편집기 소개 및 활용법 안내 | 이게... [13] toz21 2673 7 02-11
4302 소프트웨어| Pecmd.ini 위치를 Windows폴더로 이동 [6] 카멜 751 10 02-10
» 소프트웨어| (ver 0.2) 크롬/엣지에서 URL 드래그 드롭으로 제목 얻기 [11] 메리아 1042 12 02-08
XE1.11.6 Layout1.4.8