• 목록
  • 아래로
  • 위로

안녕하세요?


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


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


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



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



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


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


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



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


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


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



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


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


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

Make StudyForUs Great Again!

 

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 738
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 23.01.14.02:23 4409
공지 [필독] 질문하는 방법 17 마스터 18.02.23.03:09 4475
925 계속 사용중이던 네트워크 공유 폴더가 갑자기 액세스 불가라고 뜹니다. 6 image 장윤서 18.06.07.16:55 34342
924 팀뷰어 대체할 원격 제어 프로그램 추천 부탁드립니다 16 이니스프리 17.11.30.15:38 32326
923 엑셀 그래프의 축 간격 조절 문제입니다. 2 image 국내산라이츄 17.08.10.11:06 12495
922 아이폰/아이패드 충전기 발열 관련 질문 드립니다 9 image 이니스프리 19.05.02.22:52 11111
921 PyQt 실행시 프리징 현상 관련하여 질문 드립니다! ㅠㅠ 3 이니스프리 19.07.06.03:37 6707
920 에러 523 해결법 4 입체그림 20.02.21.16:48 6705
919 프린터가 지 맘대로 프린트를 하네요. 3 곰도리푸 18.04.04.18:20 6062
918 윈도우용 메일 클라이언트가 필요합니다. 9 네모 18.01.11.20:15 5867
917 크롬에서 특정 사이트 접속 문제 관련하여 질문 드립니다 9 이니스프리 17.03.27.18:03 5325
916 오라클 클라우드 프리티어 가입이 안 되네요 ㅠㅠ 20 이니스프리 20.06.26.21:31 4843
915 파이썬 에디터로 어떤 것이 좋나요? 14 NoYeah 20.01.08.21:08 4534
914 라떼판다와 라즈베리 파이 중 어느 쪽을 사는 게 나을까요? 9 제르엘 18.10.14.19:25 3836
913 나무 위키의 수익구조는 무엇일까요? 2 NoYeah 18.03.18.15:56 3835
912 파티션 복구 프로그램 TestDisk 잘 아시는 분 계시나요? 29 이니스프리 17.11.10.14:53 3748
911 IE11에서 이미지가 깨지는 현상을 해결할 수 있을까요? 2 이니스프리 19.08.02.00:01 3705
910 파일질라로 연결하니까 보안되지 않은 서버입니다. TLS를 통한 FTP를 지원하지 않습니다. 이렇게떠요 해결방안좀 1 마카오 16.09.11.00:57 3657
909 자바스크립트 FormData와 관련된 메서드의 IE 호환성과 관련하여 질문 드립니다 ^^ 6 image 이니스프리 19.08.05.14:22 3433
908 선택약정 안 되는 중고폰의 경우에는 어떤 단점이 있는 것인가요?? 6 이니스프리 20.01.21.14:30 3103
907 [Requests] multipart/form-data의 전송에 대해 질문 드립니다 ^^ 4 이니스프리 19.12.18.22:00 2991
906 집에서 시놀로지 NAS로 워드프레스나 미디어위키 돌리면 느릴까요? 10 이니스프리 17.01.16.20:56 2982