반응형
오늘은 PDF 파일을 파이썬으로 읽어 사용자가 원하는 특정 텍스트를 하이라이트 처리하는 서비스를 구현해보겠습니다. 소스코드import fitzinput_file = 'SPRi AI Brief 5월호 산업동향.pdf'doc = fitz.open(input_file)search_text = 'MCP 프로토콜'for page in doc: text_instances = page.search_for(search_text) print(f"텍스트 인스턴스 : {text_instances}") for inst in text_instances: highlight = page.add_highlight_annot(inst) highlight.set_colors(stroke=(1,..
yamlYAML은 사람도 읽기 쉽고, 기계도 파싱하기 쉬운 데이터 직렬화 포맷입니다.주로 설정 파일(config file)이나 데이터 정의 등에 많이 사용되며,특히 Python 프로젝트나 서버 설정, Kubernetes, GitHub Actions 같은 환경에서 자주 등장합니다. YAML 예제config.yamlname: TopProjectproject: title: AI Transformation year: 2025members: - name: Kim role: Manager - name: Lee role: Developer YAML 읽기보안상 안전하게 yaml 을 파싱할 때는 safe_load() 를 사용 합니다. import yamlwith open('config.yaml', '..
오픈소스 프로젝트를 보다가 click 이라는 라이브러리를 알게 되었다. github 16.4k 스타를 받았다. 어떤 방식으로 사용되는 것이고 어떤 장점이 있는지 소개해 드립니다. click cli 를 쉽고 직관적으로 만들 수 있게 해주는 라이브러리 installation $ pip install click Example데코레이터 @click.option 으로 정의된 두가지 변수 count 와 name 값이 함수의 파라미터로 전달이 된다. import click@click.command()@click.option("--count", default=1, help="Number of greetings.")@click.option("--name", prompt="Your name", help="The pers..
iOS 사진첩에 있는 사진 또는 동영상을 맥북으로 옮기다보면, "IMG_1234.mov" 처럼 아무 의미 없는 파일명으로 매핑이 됩니다.이런 파일들을 SSD로 옮기면서 촬영 날짜(예: 2023-05-12_14-30-22.mp4)로 이름을 변경하면 훨씬 체계적으로 관리할 수 있습니다. 이번 포스팅에서는 맥북에서 ExifTool을 사용해 동영상 파일명을 촬영 날짜로 변경하고 SSD로 옮기는 방법을 소개합니다. 왜 ExifTool인가?ExifTool은 사진과 동영상의 메타데이터(촬영 날짜, 카메라 정보 등)를 읽고 수정할 수 있는 오픈소스 도구입니다. 동영상 파일은 QuickTime 메타데이터(CreationDate 등)를 포함하고 있어, 이를 활용해 정확한 촬영 날짜로 파일명을 변경할 수 있습니다. GUI ..
허깅페이스 데이터셋 라이브러리를 로드 할때 아래와 같은 에러가 발생하였다. from datasets import load_datasetModuleNotFoundError: No module named '_lzma' 주요원인ModuleNotFoundError: No module named '_lzma' 에러는 Python이 설치될 때 lzma 압축 라이브러리가 제대로 설치되지 않았기 때문에 발생합니다.이 문제가 발생하는 주요 원인은:1. macOS에서 xz 라이브러리(lzma 압축을 지원하는 시스템 라이브러리)가 설치되지 않은 경우2. Python이 설치될 때 xz 라이브러리를 찾지 못한 경우해결 방법은 다음과 같습니다: 해결방법$ pyenv uninstall 3.11.XX (사용중인 버전)$ brew ..
browser-use🌐 Browser-use is the easiest way to connect your AI agents with the browser.https://github.com/browser-use/browser-use예전에 웹 크롤링이나 스크래핑은 python selenium 라이브러리를 사용해서xpath 경로를 지정해주는 방식으로 개발을 했었다. 하지만, 이제는 browser-use 라이브러리를 사용하면브라우저와 에이전트를 연결시켜주니 보다 쉽게 크롤링을 할 수 있을 것 같다.물론, 테스트 해보니 한번에 뚝딱 나오는 만능은 아니다. Quick startWith pip (Python>=3.11):pip install browser-useCodefrom langchain_google_gen..