인터넷 상에서 각종 스팸 로봇은 웹페이지로부터 무작위로 이메일 링크를 수집해 가고 있다. 이 스크립트는 간단하지만 웹페이지 상에 어쩔 수 없이 이메일을 나타낼 수 밖에 없는 경우 스팸 로봇으로부터의 무작위 추출을 최소한으로 방지할 수 있는 스크립트이다.

간단한 예로 e-mail이란 링크위에 마우스를 올려 놓으면 제대로 이메일이 보이지만 소스코드 상에서는 스팸 로봇이 인식할 수 없도록 변수 처리가 되어 있다.

이메일을 숨겨주는 소스코드를 생성해 주는 간단한 예제를 살펴보자.

아래에 자신의 이메일을 입력한 후 "코드 생성"이란 버튼을 클릭해보자. 그러면 아래 텍스트 박스에 이메일을 숨겨주는 자바스크립트 소스코드가 생겨날 것이다. 이렇게 생성된 자바스크립트 코드를 이용하여 이메일 링크를 처리해 주면 된다.



위의 텍스트 입력 창에 자신의 이메일을 입력한 후 "코드 생성" 버튼을 클릭하면 아래 텍스트 창에 해당 자바스크립트 소스코드를 생성하여 보여줄 것이다.


위 예제에서 "코드 생성"이란 버튼을 클릭하면 다음과 같은 generateEmail이란 자바스크립트 함수를 호출한다.

<script>
var strCode=""
function generateEmail() {
var strEmailAddress=document.frmCode.objTxtEmail.value
var strSplitAddress=strEmailAddress.split("@")
var strAccount=strSplitAddress[0]
var strHost=strSplitAddress[1]
var strAt="@"
strCode='<script>var strAccount="'+strAccount+'";var strHost="'+strHost+'";var strAt="'+strAt+'";document.write("<A HREF=\"mailto:"+strAccount+strAt+strHost+"\">e-mail</a>")<\/script>'
document.frmCode.objTxtCode.value=strCode
}
</script>


텍스트 입력 상자가 있는 폼 영역에 대한 소스코드는 다음과 같다.

<form name="frmCode">
<input type=text value="youremail@address.com" style="font-size:8pt" name="objTxtEmail" size=40> <input type=button onClick="generateEmail()" value="코드 생성" style="font-size:8pt"><br><br>
<textarea name="objTxtCode" cols="60" rows="4" style="font-size:8pt">
</textarea>
</form>


물론 이 방법이 이메일 링크 유출을 완벽하게 막을 수 있는 것은 아니다. 다만 이 방법은 스팸 로봇이 자동으로 웹 페이지를 분석하여 이메일 링크를 수집해 가는 것을 어느 정도 막아줄 수 있는 방법이다.
Posted by 퓨전마법사
,