• 목록
  • 아래로
  • 위로

안녕하세요?


그누보드용 링크파싱 애드온을 짬짬이 만들어보고 있는데요 ^^


다른 분들께서는 어떤 방식으로 만드셨는지 이것저것 테스트해보고 있네요.


그런데 어떤 애드온의 경우에는 다음과 같이 대표사진으로 애매한 사진파일이 등록되더군요 ㅠㅠ



개인적으로 아래 사진이 등록되기를 기대했지만 무리였네요~!



new.gif이 어떤 메커니즘으로 수집이 되었는지는 모르겠지만


"Study For Us - 모두의 지식공유 커뮤니티! 그리고 무료호스팅!!" 이 부분은 head의 meta 태그 중 타이틀을 받아온 것 같은데요.


"본문으로 바로가기 Site Notice FAQ 설문조사"라는 내용도 조금 아쉽네요 ㅠㅠ



이런 문제를 피하려면 어떤 방식으로 사진파일과 컨텐츠를 수집해야 될까요?


일정 크기의 이미지를 불러오는 방식으로 하면 좋겠지만 제 경험상 PHP의 getimagesize() 함수는 모든 경우에 잘 작동하지는 않는 것 같더군요.


마땅한 대표이미지가 없다면 해당 사이트의 파비콘을 받아서 사용하는 것도 하나의 방법이 될 수는 있을 것 같긴 하네요 ^^;



그럼 답변해주실 분께 미리 감사드립니다!


하루만 버티면 주말인데 다들 화이팅입니다~! ^-^


작성자
이니스프리 119 Lv. (0%) 1876250/115200000EXP

당분간 일신상의 사정으로 쪽지나 댓글로 답변을 드리기 어렵습니다. 죄송합니다.

 

CSVpuymXAAAVVpd.jpg

댓글 9

title: 황금 서버 (30일)humit
profile image

보통 og 태그로 설정이 되어 있는 내용을 읽어오는 것을 기본으로 합니다.

만약 없다면 body에 있는 내용을 토대로 파싱을 하는 방법이 있습니다.

네이버 지식인의 경우에는 og태그가 없으면 아무것도 출럭하지 않습니다.

comment menu
2019.01.11. 11:52

신고

"humit님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리 작성자 → humit
profile image

답변해주셔서 정말 감사합니다~!

말씀해주신대로 애드온들이 대체로 og 태그 위주로 내용을 읽어오더군요 ^^

그런데 og 태그 이외에 무엇을 추가로 파싱할 것인지에 따라 보여지는 결과가 상당히 다른 것 같아요 ㄷㄷ

네이버 지식인처럼 og 태그에 국한하여 출력하는 것이 어떤 의미에서는 가장 conservative하고 무난할 수 있겠네요.

제 실력이 부족하지만 일단 말씀해주신대로 og 태그 위주로 만들어보겠습니다!

다시 한 번 감사드립니다 ^-^

comment menu
2019.01.11. 12:44

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

윤삼
profile image

조언이라기보다는 라이믹스나 XE 기준으로 말씀드릴게요. (이미 뜯어보셨을 수 있겠지만요ㅎ)


기존의 애드온이든 모듈이든 메타 태그의 og나 twitter 속성 등에서 이미지가 체크되면 수집이 중단되게 했었어요.
또 메타 태그에 og 등 특별한 속성이 없는 경우에 한해 페이지에 있는 이미지들을 긁어와서 getimagesize로 사이즈 체크 후 대표 이미지로 선택을 했었습니다.
대략 160px 이상 정도로요.


if ($width > 159 || $height > 159)
{
    if (($width > 0 && $height > 0 && (($width / $height) < 3) && (($width / $height) > .2)) && strpos($img, 'logo') === false)
    {
        $images[] = array("img" => $img, 'base64' => 'data:image/' . $ext . ';base64,' . base64_encode($oParserlinkModel->getRemoteResourceImageString($img)));
    }
}


모듈 쪽에는 이렇게 되어 있네요.
 
말씀하신 문제를 피하려면 아마 위 소스의 조건을 og 속성 체크할 때 적용하는 것도 방법이겠지 싶습니다.

다만, 이러려면 getimagesize를 거부하는 서버에 대해서는 접근이 제한적일 수 있고, 파싱 속도에도 지장이 있을 것 같긴 합니다.

comment menu
2019.01.11. 12:06

신고

"윤삼님의 댓글"

이 댓글을 신고 하시겠습니까?

이니스프리 작성자 → 윤삼
profile image

앗 XETOWN에서 '링크 파싱 애드온'을 제작하신 윤삼 님이시군요~!

애드온을 제작하신 윤삼 님께서 저같은 초보에게 직접 답변해주셔서 몸둘 바를 모르겠네요~ 정말 감사합니다 :)

 

말씀해주신대로 우선 og나 twitter 속성에서 이미지를 체크하되 그 사이즈를 확인하고,

그렇지 않다면 페이지의 이미지를 긁어와서 사이즈를 체크하여 대표이미지로 선택하는 방식으로 시도해보겠습니다.

 

다만 말씀하신대로 getimagesize()가 제한되는 경우에 대해 고려해야 할 것 같고,

저같은 초보가 만들면 파싱속도의 측면에서는 상당히 제한이 따르겠네요 ㅠㅠ

유튜브, 인스타, 네이버뉴스 등 링크가 많이 걸리는 사이트는 속도향상을 위해 별도로 처리를 해야겠네요.

 

그럼 늦었지만 윤삼 님께서도 새해 복 많이 받으세요~!

답변해주셔서 다시 한 번 진심으로 감사드립니다 ^-^

comment menu
2019.01.11. 12:55

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

윤삼 → 이니스프리
profile image

저야말로 초보여서 부끄럽습니다.

사이트마다 og 기록 방식이 다 다르다보니 사이즈에 따라 페이지 내 이미지를 선택해야 하는 경우가 분명 있을 것 같아요.

작업 응원하겠습니다!

곧 설날이어서 아직 좀 이르지만ㅋ 새해 복 많이 받으세요~!

comment menu
2019.01.11. 13:22

신고

"윤삼님의 댓글"

이 댓글을 신고 하시겠습니까?

포인트 폭탄+ → 윤삼
윤삼님 축하합니다.
추가로 200포인트만큼 포인트 폭탄+를 받았습니다.
WOW! 큰 폭탄이 터졌습니다.
당첨된 포인트의 2배인 총 400포인트를 받으셨습니다.
comment menu
2019.01.11. 13:22

신고

"포인트 폭탄+님의 댓글"

이 댓글을 신고 하시겠습니까?

삭제

"포인트 폭탄+님의 댓글"

이 댓글을 삭제하시겠습니까?

이니스프리 작성자 → 윤삼
profile image

옙 정말 감사합니다!!

저는 그누보드용을 만들고 있지만 윤삼 님께서 XETOWN에 올려주신 자료가 정말 큰 도움이 되고 있네요 ^-^

말씀하신대로 사이트마다 og 기록 방식이 상이한 것이 일정한 결과물을 출력하는 데에 가장 큰 장애물인 것 같아요.

SIR에 유튜브 등 몇몇 대형 사이트에 대해서만 링크 파싱을 하는 소스가 있던 것으로 기억하는데요.

그 제작분께서 그렇게 일부 사이트에 한정하여 작동하도록 제작하신 이유를 조금이나마 이해할 것 같네요.

그럼 윤삼 님께서도 좋은 주말 되세요~!

다시 한 번 감사드립니다 :)

comment menu
2019.01.11. 15:56

신고

"이니스프리님의 댓글"

이 댓글을 신고 하시겠습니까?

도토리묵 → 윤삼

오잉? 윤삼님이 여기서 ㅋㅋㅋ

comment menu
2019.01.14. 12:42

신고

"도토리묵님의 댓글"

이 댓글을 신고 하시겠습니까?

윤삼 → 도토리묵
profile image

네~ 저도 스포어 쓰고 있었어요 ^^/

comment menu
2019.01.14. 14:24

신고

"윤삼님의 댓글"

이 댓글을 신고 하시겠습니까?

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 24.02.11.17:21 376
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 23.01.14.02:23 4061
공지 [필독] 질문하는 방법 17 마스터 18.02.23.03:09 4464
922 미디어플렛폼 vs 커뮤니티 55 title: 에그joyful 19.01.13.15:55 996
921 현재로서는 CKEditor 4.14를 사용하는게 최선일까요? 37 이니스프리 20.05.06.01:47 577
920 유튜브 다운로더에 대해 여쭤봅니다. 31 Nginx 20.05.12.22:05 609
919 히어로 무비 추천 부탁드립니다! 30 이니스프리 19.10.29.13:48 307
918 베리즈 웹 쉐어 연결 시간 초과 문제 29 image 루니 17.08.07.11:38 1166
917 데스크탑이냐 랩탑이냐, 그것이 문제입니다. 29 네모 19.11.28.14:15 331
916 파티션 복구 프로그램 TestDisk 잘 아시는 분 계시나요? 29 이니스프리 17.11.10.14:53 3745
915 AWS Lightsail 관련해서 질문이 있습니다... 24 MYIG 20.05.26.00:18 575
914 호스팅 신청했는데요 도움 좀 부탁드립니다. 24 GsusWeb 20.06.20.21:34 227
913 윈도우 서버를 VPS에 구축하는 것에 대해 질문 드립니다. 23 이니스프리 20.02.17.21:06 632
912 글쓰기 포인트 차감을 우회하여 도배하는 스팸에 대해 질문드려요~! 22 이니스프리 20.05.31.00:25 424
911 도움이 절실합니다. Freenom 질문입니다.(왕초보) 22 image 슬립 17.11.14.12:55 1322
910 음 제 블로그가 증발한건가요...? 21 갱생협스 19.01.13.22:50 270
909 호스팅 FTP 계속 타임 아웃이 생깁니다..! 21 image BVC_Liper_Okbul 18.06.29.20:33 563
908 JSP의 장단점에 대해 질문 드립니다. 21 이니스프리 20.06.09.21:42 218
907 네이버 사전을 크롤링할 때 한자의 인코딩 관련 하여 질문 드립니다. (일부 한자만 깨지는 현상) 21 image 이니스프리 19.11.22.16:22 1236
906 홈... 이런게 가능할까요? 21 모니터 17.10.10.18:37 401
905 게임 용어에 대해 질문 드립니다 (탱커/딜러/힐러) 21 이니스프리 20.06.05.20:45 2112
904 로딩 로딩 도와줘요 21 모니터 17.10.12.13:32 573
903 오라클 클라우드 프리티어 가입이 안 되네요 ㅠㅠ 20 이니스프리 20.06.26.21:31 4827