안에 있다고 가정 main_content = soup.find('div', class_='main-content') return main_content.get_text(strip=True) if main_content else '' def format_script(text): # 텍스트를 문장별로 분리 sentences = text.split('.') # 2문장씩 묶어서 스크립트 형태로 작성 script = "" for i in range(0, min(len(sentences), 10), 2): script += sentences[i].strip() + '. ' if i+1 < len(sentences): script += sentences[i+1].strip() + '\n' return script # Gradio 인터페이스 함수 def gradio_fetch_and_format_script(url): html_content = get_url_content(url) main_content = get_main_content(html_content) return format_script(main_content) # Gradio 인터페이스 구성 iface_html = gr.Interface( fn=gradio_fetch_and_parse, inputs=gr.Textbox(label="URL을 입력하세요"), outputs=gr.Textbox(label="스크랩된 HTML 콘텐츠") ) iface_script = gr.Interface( fn=gradio_fetch_and_format_script, inputs=gr.Textbox(label="URL을 입력하세요"), outputs=gr.Textbox(label="영상용 스크립트") ) # 두 인터페이스를 탭으로 구성하여 실행 iface_combined = gr.TabbedInterface(interfaces=[iface_html, iface_script], tab_names=["HTML 보기", "스크립트 생성"]) iface_combined.launch()