반응형
<Web 화면에 이미지/동영상/음악 파일 보여주기>
# 기본적으로 모든 코드들은
def main() :
if __name__ == '__main__' :
main()
ㄴ 이 기본형식 안에서 쓰여저야 실행된다. 혹시 실행이 되지 않을경우 하단에 마무리 코드를 적지 않았는지 확인!
# 웹 화면에 실행 확인은 생성한 파일명이나 혹은 연동한 app을 서버로 실행하여야 함.
# 터미널을 cmd로 열어 & streamli lit run 실행시킬서버명칭.py 로 실행후 always rerun 후 확인
< app5.py로 작성 >
# import
# 이미지/동영상/음악파일을 화면에 보여주는 방법
import streamlit as st
# 이미지 처리를 위한 라이브러리
from PIL import Image
1) image 를 직접 다운받아서 보여주는 방법
def main() :
# 1. 저장되어있는 이미지 파일을 화면에 표시하는 방법
img = Image.open('./data/image_03.jpg')
st.image(img)
st.image(img, width= 500)
st.image(img, use_column_width=True)
ㄴ 이미지를 원본 크기로, 500크기로, 화면에 맞추어 세가지로 출력시켜봄
# 인터넷 링크로 이미지 열기
# 원하는 이미지를 인터넷에서 찾아 다른브라우저로 열기를 누르고 해당 url 주소를 그대로 입력
# 다만 해당 이미지를 배포한 곳에서 이미지를 네려버릴경우 우리도 자동으로 이미지가 없어져버리기 때문에 1번 방법으로 실행하는것이 좋음
# 2. 인터넷상에 있는 이미지를 화면에 표시하는 방법
# 인터넷상의 이미지 : URL 이 있다!!
st.image(url)
# 동영상
ㄴ 이미지와 동일하게 다운받아서 폴더안에 복사
# 3. 동영상 파일
video_file = open('./data/video1.mp4', 'rb')
st.video(video_file)
ㄴ 'rb'는 파일을 바이너리 읽기 모드로 열겠다는 의미로, 여기서 'r'은 읽기를 의미하고, 'b'는 바이너리 모드를 의미한다.
ㄴ 바이너리 모드는 텍스트가 아닌 데이터를 읽을 때 사용되고, 'rb' 모드로 파일을 열 때는 텍스트 파일이든 바이너리 파일이든 상관없이 파일의 내용을 읽을 수 있다. 영상이나 오디오를 읽을때는 꼭 사용!
# 오디오
ㄴ 동일하게 다운 복사
# 4. 오디오 파일
audio_file = open('./data/song.mp3', 'rb')
st.audio(audio_file.read(), format='audio/mp3')
### app5.py 전체 코드 ###
# 이미지/동영상/음악파일을 화면에 보여주는 방법
import streamlit as st
# 이미지 처리를 위한 라이브러리
from PIL import Image
def main() :
# 1. 저장되어있는 이미지 파일을 화면에 표시하는 방법
img = Image.open('./data/image_03.jpg')
st.image(img)
st.image(img, width= 500)
st.image(img, use_column_width=True)
# 2. 인터넷상에 있는 이미지를 화면에 표시하는 방법
# 인터넷상의 이미지 : URL 이 있다!!
st.image(url)
# 3. 동영상 파일
video_file = open('./data/video1.mp4', 'rb')
st.video(video_file)
# 4. 오디오 파일
audio_file = open('./data/song.mp3', 'rb')
st.audio(audio_file.read(), format='audio/mp3')
if __name__== '__main__' :
main()
다음 게시글로 계속
728x90
반응형
'DASHBOARD APP 개발 > Streamlit Library' 카테고리의 다른 글
Streamlit 기본 lib : 파일을 분리해서 개발하는 방법 (0) | 2024.05.07 |
---|---|
Streamlit 기본 lib : Web화면에서 이미지, csv 파일 업로드 하기 (0) | 2024.05.07 |
Streamlit 기본 lib : Web화면에서 유저한테 숫자, 문자, 시간, 색 입력받기 (0) | 2024.05.07 |
Streamlit 기본 lib : Web 화면에 Dataframe 보여주기 & 버튼 만들기 (st.dataframe/button 등..) (0) | 2024.05.07 |
Streamlit 기본 lib : 서버 실행 및 텍스트 표시 (st.title/text 등..) (0) | 2024.05.07 |