창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


LIST ALL
Posted by 하얀구름2011-07-29 09:48:02, Hit : 5318
네이버 검색어 문자 질문
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=freeboard&no=4608
%EB%84%A4%EC%9D%B4%EB%B2%84+%EA%B2%80%EC%83%89%EC%B0%BD+%ED%95%9C%EA%B8%80


네이버 검색창에서 검색어를 넣으면 전에는 주소창에 한글이 나왔는데

지금은 위와 같은 이상한 글이 나오네요...

네이버 검색프로그램 만드는 중인데..ㅠ.ㅠ


위의 글자는 어떻게 대체를 해야할징...도움주세요.

민용빈   2011-07-29 PM 1:43:25  
URL을 전송할때는 1바이트 크기의 아스키코드로 전송하는데 아스키코드는 영문, 숫자, 기본적인 특수문자로 이루어져있습니다. 이때 한글은 2바이트 크기로 이루어져 있고 아스키코드 배열에도 속해있지 않는바람에 두개의 아스키코드를 조합해 표현합니다. 이때 %EB%84란건 EB란 아스키코드와 84란코드로 조합되어있죠.
지상현   2011-07-29 PM 1:54:15  
URI를 만들 때 데이터를 인코딩 하는 룰에 의한 것입니다.
%XX로 한 바이트를 표현하며, + 기호는 띄어쓰기를 표현하는 특수 기호입니다.

위 예에서, 첫 3바이트, EB 84 A4가 한글 '네'라는 글자를 표현하는 데이터입니다.
(제시하신 데이터는 UTF-8이며, UTF-8에서 한글은 3바이트 차지합니다.)
마찬가지로 그 다음 EC 9D B4가 '이'라는 글자입니다.

요는, 문자열을 UTF-8로 뽑아낸 다음 파일이진읽어 같은 함수로 16진수 데이터로 읽은 다음, 1바이트 (16진수 문자 2개씩)마다 %를 붙이면 됩니다.
띄어쓰기는 %20으로 해도 상관은 없습니다만, + 으로 하는게 좀 더 절약은 되겠죠.

rfc3986 섹션 2.1에 정의되어 있습니다.
http://www.ietf.org/rfc/rfc3986.txt

http://ko.wikipedia.org/wiki/%ED%8D%BC%EC%84%BC%ED%8A%B8_%EC%9D%B8%EC%BD%94%EB%94%A9
신용주   2011-07-29 PM 11:24:00  
http://cugz.sjworks.net/bbs/zboard.php?id=pds_prog&no=530

요기에 제가 만든거 있습니다. 확인해보시길~ ^^
paintj   2011-07-31 PM 7:30:56  
query= 뒤에 직접 한글 입력해도 검색 됩니다. 굳이 변환할 필요 없습니다.
지상현   2011-08-01 AM 1:46:40  
>>paintj
변환해야 할 것 같은데요.
창조에서 쓰는 문자열은 ANSI기 때문에 한글 윈도에서 한글은 한글 확장 완성형입니다.
네이버는 검색 문자열 UTF-8로 받습니다.
paintj   2011-08-01 AM 2:40:49  
지상현님 직접 해봐서 압니다. 그냥 한글 때려넣어도 잘 됩니다.
paintj   2011-08-01 AM 2:44:07  
프로그램 자료실에 올려놨습니다.
paintj   2011-08-01 AM 2:48:39  
IE6 기준으로 제작했는데 최신버전(8 혹은 9)에서 깨져서 나올시 코드를 이렇게 바꾸면 잘 작동할것입니다.

인터넷주소("http://search.naver.com/search.naver?&query="+에디트0.문자+"&ie=euckr");
paintj   2011-08-01 AM 2:49:26  
그렇지만 다른 버전들에서도 굳이 마지막에 &ie=euckr 붙여줄필요 없이 잘 작동할 것 같네요.
김동민   2011-08-01 AM 11:25:53  
그런데 가만 생각해보면~
어떠한 방법으로 잘 되고 안 되고를 떠나서
가급적이면 정석대로(?) 가는 방향이 향후 발생할지도 모르는
문제를 감안하면 여러모로 이롭죠!

실무에서 100% 완벽하게 검증되지 않은 방법으로
무언가를 적용했다가 나중에가서 한 건 터지면
경우에 따라서는 감당 안 됩니다ㅋ

꼼수는 정말 어쩔 수 없을 때 임시방편으로 써야지
그걸 베이스로 하는 게 습관이 되면 장기적으로 봤을 때
그만큼 리스크가 큽니다~

물론! 각자 생각하시는 것이 잘못됐다 라는 것은 아니니
혹시라도 오해 없으시기를 바라며!

실무 뛰면서 엿을 많이 먹어본 사람의 단순한 어드바이스 정도로
받아들여주신다면 무한 ㄳ ㅋㅋㅋㅋㅋ

간만에 커즈닷컴 놀러왔다가 뻘댓글 투척하고 갑니다 잇힝~
paintj   2011-08-01 PM 12:18:15  
꼼수아닙니다. IE에 query=뒤에 한글을 넣어주면 알아서 utf8으로 변환해서 보내줍니다. 그래서 검색이 잘 되는것이지요
김동민   2011-08-01 PM 1:13:25  
혹시나 해서 테스트를 해봤는데 이게 관계가 있는지 모르겠으나,
IE에서 URL을 UTF-8로 보내는 옵션의 활성화 여부와 관계없이
query 파라미터에 한글 검색어를 직접 입력해서 보내면
결과가 깨지는군요!

대신 맨 뒤에 ie=utf8 이었나 하는 부분을 제거하고 검색하니
한글로 파라미터를 넘겨도 검색이 잘 됩니다.

프로그램적으로 테스트를 해본 것은 아니고,
IE로 네이버 접속 후 적당히 검색하여 URL 파라미터만 바꿔가면서
진행을 해봤는데 저는 이런 결과가 나오는군요~

오호~ 이상한데!?
왜 저는 paintj 님과 결과가 다를까요?;;
일부러 UTF-8로 URL 보내는 옵션도 바꿔가면서 테스트를 해봤는데
희한하네요~

해서! 뭔가 IE 버전이나 기타 환경적 특성을 타는 것 같은 느낌인데
과연 이러한 사용자적 특성을 개발자가 전부 다 커버할 수 있나~
하는 것이 문제라는 겁니다ㅋ

작성하신 코드가 "꼼수다"라고 말씀드린 부분은 아니었구요!

가급적이면 귀찮더라도 클라이언트의 환경까지 조금이라도
더 많이 커버할만한 코드를 작성하는 것이 좀 더 낫지 않겠는가~
라는 의미로 드린 말씀이었습니다ㅋ

애시당초 검색 키워드 부분을 인코딩해서 파라미터로 던져주는 게
클라이언트 환경이고 자시고 100% 정상적으로 작동할 코드라면,
그렇게 만들어서 보내주는 게 덜 골치아프잖아요?

아, 참고로 제가 사용 중인 IE는 8 버전이구요~
지상현   2011-08-01 PM 1:16:48  
여전히 저는 바꿔서 보낼 수 있으면 바꿔서 보내는게 좋다고 생각합니다.

알아서 UTF-8로 변환해서 보내신다고 하셨는데, 실은 그렇지 않습니다.
데이터는 한글 확장 완성형으로 갑니다.
다만 네이버가 그걸 처리하는 것 뿐이지요.
URI를 어떻게 보내라는 인코딩 기준은 없습니다. 따라서 데이터가 보내는 대로 갑니다. 자동으로 변환하는 경우는 IE의 경우 URL을 항상 UTF-8로 보냄 같은 옵션을 체크했을 경우구요.
네이버쪽에서는 UTF-8 문자열은 올바른 시퀀스가 있기 때문에 이에 맞지 않은 문자열은 변환 시도하는 것으로 보입니다.
언어가 한글로 설정된 환경에서 네이버를 이용할 때는 99% 잘 되겠지요.

브라우저와 Accept-language, 검색엔진 조합을 바꿔서 테스트 해보세요.
제대로 뜨지 않는 경우가 꽤 나옵니다.

물론 혼자 개인적으로 쓴다거나 하는 거라면 굳이 이렇게 할 필요는 없겠지요. 하지만 그 방법은 꽁수가 맞다고 생각합니다.
김동민   2011-08-01 PM 1:37:53  
네네, 저도 상현님 의견에 한 표!

지금은 다른 업체에게 넘겼지만 예전에 운영하던 큰 시스템이 있었고
저는 이 시스템 인수인계도 제대로 받지 못한 상황에서 운영하다가
단가도 쫌 되는*-_-* 약간 규모가 있는 추가 기능개발을 했던 때가 있었는데,

이 말아먹을 시스템이 소스파일 하나 열어보면
보통 2~3만줄짜리 코드가 떡! 하니 버티고 있고,
분석도 안 되죠~ 주석도 제대로 안 붙어있죠~

뭐 결국은 이 기능을 어떻게든 구현하려고
제가 생각해봐도 좀 무리수로 발코딩을 했었는데

일단 그대로 배포를 때리고 처음엔 별다른 문제가 없나 싶더니만
몇 달이나 지나서야 예외상황들이 하나 둘 터져나오기 시작하더라구요!

뒤늦게 그거 잡느라 고생깨나 했었는데,
바로 이런 상황과 마찬가지로 나중에 문제가 될 소지가 있는 부분을
조금이라도 줄여보자! 라는 것이 제가 위에 장황하게 설명한 내용의
레알 핵심 키 뽀인트 였습니다ㅋㅋ

일은 일대로 열심히 하고 나중에 까이면 짱나잖아요?ㅋㅋ
신용주   2011-08-01 PM 1:56:59  
저도 이와 같은 프로그램을 만든 적이 있어서... 상단에 링크 확인바래요.
말씀하신데로 네이버에서 자동 변환 해서 보여줍니다. 편하게 하시고자 하신다면 이것이 편하겠지요. 그러나... 이 부분이 지원되지 않는다고 한다면 문제가 생기지 않을까요...?
지상현   2011-08-01 PM 2:09:45  
사실 이 상황에서는 이렇게 따질 필요가 없는데 조금 죄송스런 기분도 드네요.
그렇지만 이런 저런 설명은 다 빼놓더라도, 올려주신 프로그램은 제대로 동작하지 않습니다.
(환경: FF5.0이 기본 브라우저, Windows 7)

1. 검색어에 띄어쓰기가 있을 경우 창이 아예 뜨지 않습니다.
2. 검색어에 & 문자를 쓸 수 없습니다.

어차피 그대로 쓸 순 없고, 처리는 필요합니다.
김동민   2011-08-01 PM 4:00:26  
가만보니 저도 뭐 그냥 좋은 습관을 들이는 것이 영양가 있다!
라고 말해야 될 것을 안 좋은 습관은 옳지 않아!! 라는 뉘앙스로
전해드린 것 같아 신경이 쓰이는군요ㅋㅋ

혹시라도 제 글을 보고 언짢으셨다면 너그러이 용서해 주시길!*-_-)b
LIST ALL               GO TO THE TOP


N
C
   Subject
Posted by
Date
H
121
   이건 뭘까요 [1]
성인e 2011/01/10  4246
120
   이제는 위험 사이트 안뜨네요~! [2]
박종훈 2011/01/11  4829
119
   이건 또 뭘까요 [1]
성인e 2011/01/12  4447
118
   구글 웹서치가 cugz.com을 검색하네요 ㅠㅠ
지상현 2011/01/16  4747
117
   뻘소리 / 인기가 시들해진 ㅎ동화 객체.
지상현 2011/01/16  4745
116
   세붓 그리기 어떻게 하죠?
신용주 2011/01/17  4925
115
   초기화 명령어 편집할 때 조심합시다 [1]
지상현 2011/01/17  4672
114
   어제 이상한꿈 꿨어요 ㅋㅋㅋ 창조 0.7c [3]
박종훈 2011/01/22  4621
113
   여기도 작게나마 창조 정보가 공유되고 있군요! [4]
김대명 2011/01/26  4168
112
   작업이-_-; 진행되질 않는군요 [1]
지상현 2011/01/31  4869
111
   오늘의 창조 연구 결과 (?) [3]
지상현 2011/02/05  4676
110
   정말 기절하는 줄 알았습니다ㅋㅋㅋㅋㅋ [7]
지상현 2011/02/09  4202
109
   결국 디씨가 망했네요. [4]
신용주 2011/02/14  4359
108
   시간의 흐름이 새삼스럽습니다. [4]
이진백 2011/03/09  4213
107
   해킨토시 어떤가요? [5]
신용주 2011/03/13  5135
106
   잘들 지내시는지요~ [1]
제인호[독도] 2011/03/16  4685
105
   여기 별명 써도 되죠? [2]
김대명 2011/04/01  4146
104
   잘 지내시죠? [5]
남상기 2011/04/13  4138
103
   제가 2001년에 말이죠 [5]
이정도 2011/04/24  4257
102
   아... cugz 또 악성코드 감염된 건가요??? [2]
지상현 2011/04/29  4916
101
   창조에서 이런 오류도 있네요 [1]
김대명 2011/05/17  4292
100
   오랜만에 글남기네요;; [4]
박종훈 2011/06/15  5099
99
   새로 태어날 Cugz에 대해 의견을 받습니다. [23]
손상진 2009/04/08  6658

   네이버 검색어 문자 질문 [17]
하얀구름 2011/07/29  5318
97
   table과 웹표준 [4]
이진성 2011/07/30  4821
LIST ALL   Prev [1]..[151] 152 [153][154][155][156] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인