[Python] 확장자가 표시되지 않는 온라인 이미지의 확장자를 확인하기
티스토리에 업로드한 이미지를 비롯하여
일부 사이트에서는 URL에 이미지 확장자가 표시되지 않는 경우가 있습니다.
그러한 경우에 다음과 같이 imghdr 모듈을 활용하여 확장자를 알아낼 수 있습니다 ^^
[code]
from io import BytesIO
import requests, imghdr
def find_extension(url):
img = BytesIO(requests.get(url).content)
return imghdr.what(img)
[/code]
댓글 2개
3년 전
호오 그렇군요...
예전에 커뮤니티에 파일을 올릴 때
이미지 이외에는 업로드가 안 되어서 음원파일의 확장자를 jpg 로 바꿔서 업로드하고
그걸 embed 태그로 걸었던 생각이 납니다.
예전에 커뮤니티에 파일을 올릴 때
이미지 이외에는 업로드가 안 되어서 음원파일의 확장자를 jpg 로 바꿔서 업로드하고
그걸 embed 태그로 걸었던 생각이 납니다.
Innisfree
3년 전
@비타주리 옙 말씀하신대로 파일의 확장자를 임의로 변경하여 업로드하더라도
브라우저에서 적절히 처리하기 때문에 대체로 정상적으로 출력 또는 재생이 되더군요 ^^
그런데 아미나 계열에서 댓글에 괄호로 짤을 넣을 때에는
확장자를 넣지 않으면 이미지로 인식하지 못하는 문제가 발생하기 때문에
Tistory 이미지 경로에 #.확장자를 붙이는 방식으로 처리하고는 하죠 :)
제가 올려드린 함수는 이미지를 크롤링하여 다운받을 때
특정 확장자의 이미지(ex. GIF)만 다운받기 위한 목적으로 작성되었습니다~
그럼 편안한 저녁 되세요 ^^
브라우저에서 적절히 처리하기 때문에 대체로 정상적으로 출력 또는 재생이 되더군요 ^^
그런데 아미나 계열에서 댓글에 괄호로 짤을 넣을 때에는
확장자를 넣지 않으면 이미지로 인식하지 못하는 문제가 발생하기 때문에
Tistory 이미지 경로에 #.확장자를 붙이는 방식으로 처리하고는 하죠 :)
제가 올려드린 함수는 이미지를 크롤링하여 다운받을 때
특정 확장자의 이미지(ex. GIF)만 다운받기 위한 목적으로 작성되었습니다~
그럼 편안한 저녁 되세요 ^^
게시글 목록
| 번호 | 제목 |
|---|---|
| 17657 | |
| 17655 | |
| 17654 | |
| 17653 |
JavaScript
ThreeJS - 3D Bar and Progress Bar
1
|
| 17652 |
node.js
RAM점유크기에 의한 노드서버관리
|
| 17651 |
JavaScript
Javascript Undo, Redo 기능 구현하기
|
| 17650 | |
| 17642 |
node.js
nodejs서버가 사용중인 메모리에 대한 로그
|
| 17633 |
node.js
node.js에서 스케쥴링작성
8
|
| 17632 | |
| 17631 |
MySQL
InnoDB와 MyISAM의 우단점
|
| 17630 | |
| 17628 |
JavaScript
자바스크립트 기반으로 HTML Canvas에 이미지를 불러들여 테두리색입히기
|
| 17624 | |
| 17623 | |
| 17620 |
node.js
tcp소켓과 websocket 의 비교
2
|
| 17618 |
JavaScript
JavaScript로 이미지의 부분 영역을 따내기
|
| 17617 | |
| 17614 | |
| 17612 | |
| 17611 | |
| 17610 | |
| 17609 | |
| 17608 |
node.js
Node.js로 지속적인 핑 결과를 파일로 저장
|
| 17607 |
정규표현식
특수문자 제거, 우리글짜가 있는지 체크
|
| 17604 |
node.js
Node.js에서 PDF 파일의 페이지 수를 얻기
|
| 17603 | |
| 17602 |
node.js
Node.js로 워터마킹 기능을 구현하는 방법
|
| 17600 | |
| 17594 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기