테스트 사이트 - 개발 중인 베타 버전입니다

웹사이트 주소 알아내기

· 12년 전 · 3068 · 11
include '스누피 클래스 파일 주소';
$snoopy = new Snoopy;
$snoopy->fetch("웹사이트주소");
$t=explode("<title>","<xmp>".$snoopy->results."</xmp>");
$r=explode("</title>","<xmp>".$t[1]."</xmp>");
echo $r[0];

고수분들은 식은죽먹기일텐데 스누피를 처음사용하는 저는 3시간이나 걸려서 만들어냈습니다;;
힘들게 만든만큼 공유하려고합니다.

그럼 소스설명하겠습니다.

include '스누피 클래스 파일 주소';

일단 우리는 스누피가 필요합니다.
http://sourceforge.net/projects/snoopy/
여기서 다운받을수있습니다.
다운로드받은후 원하시는 폴더에 압축풀으시면 snoopy.class.php 라는파일이 있습니다.
이 경로를 include 해주세요

$snoopy->fetch("웹사이트주소");
$t=explode("<title>","<xmp>".$snoopy->results."</xmp>");

해당 웹사이트주소의 소스를가져와서 화면에 뿌려줍니다.
근데 문제는 html형식 그대로 뿌려주기때문에 <xmp>태그로 html태그까지 그대로 보여줘야합니다.
htmlspecialchars함수는 안해봐서 모르겠네요 아마도 그것도 똑같이 작용할거같습니다.

하여튼 뿌려진 html태그중에 <title>로 시작하는부분을 찾아내서 <title>앞의 부분은 잘라버립니다

$r=explode("</title>","<xmp>".$t[1]."</xmp>");
echo $r[0];

이젠 </title>뒷부분을 잘라줍니다.
그럼 결국 남는것은 사이트의 제목이 되는것입니다

근데 제가만들었지만 하나 문제점이 있는거같네요
저 사이트주소부분에 phpschool.com 을 넣어주고 출력을해보면

PHPSCHOOL-���� 1�� ������ Ŀ�´�Ƽ!

이렇게 나오더라고요
제생각으로는 제사이트는 utf-8을쓰고 이사이트는 euc-kr을 써서 서로 안맞는거같은데
혹시 고칠수있으신분은 댓글달아주시면 감사하겠습니다.

echo iconv("EUC-KR","UTF-8",$r[0]);
이렇게 출력하시면 깨지는현상 해결됩니다

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 11개

감사합니다.

게시글 목록

번호 제목
19384
27584
6013
6004
27572
5997
5992
5981
5964
5952
5948
5941
5937
5934
5931
19383
5926
5923
5913
24558
5912
30895
27563
5907
5903
5900
27556
5898
24555
5894
5893
5890
5884
27537
5881
5878
30888
30884
5876
5874
27524
27514
19379
19377
27509
5869
5866
27505
5865
5860
5857
27503
27481
27462
5856
19511
27458
24547
19374
19373
19371
27453
19370
27449
27441
19366
24544
19365
19361
19360
19358
19356
19354
19351
19348
19346
19339
19334
5849
27439
5846
27434
27429
19331
19329
19328
5841
5840
19326
5834
5831
5826
19324
5821
32040
27426
19320
5816
32030
5815