목록

'python' 82건

  • 종목별 시가총액 데이터 수집하기 - 종목별 시가총액 데이터 수집하기(2)
    프로그래밍 언어/Python · 댓글
    시가총액 수집 함수playwirght 패키지의 녹화 기능을 사용해 생성한 코드와 개발자 도구의 검사 모드에서 추출한 HTML 태그를 바탕으로 시가총액을 구집하는 함수 parse_table_kospi()를 만들어 사용합니다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고, 파일명을 'step_1_3.py'로 저장합니다. 다음 코드를 입력한 뒤 실행 아이콘을 클릭하여 실행합니다. 크로미움 웹 브라우저를 사용하여 네이버페이 증권에서 코스피 시가총액 데이터를 수집한 후, JSON 형식으로 저장합니다. ch07/step_1_3.pyimport jsonfrom pathlib import Pathfrom playwright.sync_api import Pagefrom step_1_1 import OUT_DIRfrom..
  • 종목별 시가총액 데이터 수집하기 - 종목별 시가총액 데이터 수집하기(1)
    프로그래밍 언어/Python · 댓글 1
    이제부터 코스피 종목별 시가총액 데이터를 수집하는 함수를 만들어 봅시다. playwright 패키지와 크로미움 웹 브라우저를 사용하여 네이버페이 증권에 접속한 후 데이터를 수집할 것입니다.네이버페이 증권https://finance.naver.com/ Npay 증권국내 해외 증시 지수, 시장지표, 뉴스, 증권사 리서치 등 제공finance.naver.com 웹 동작 자동화본격적인 데이터 수집에 앞서, playweight 패키지를 사용하여 크로미움 웹 브라우저와 인스펙터를 실행하는 함수 run_playwright()를 만들어 봅시다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고, 파일명을 'step_1_2.py'로 지정합니다. 다음 코드를 입력한 뒤 실행 아이콘을 클릭하여 실행하면 크로미움 웹 브라우저를 ..
  • 종목별 시가총액 데이터 수집하기 - 파이썬 패키지 준비하기
    프로그래밍 언어/Python · 댓글
    시가총액은 기업의 주가에 발생 주식 수를 곱한 지표로, 기업의 시작 가치를 나타내는 중요한 척도입니다. 투자자들은 시가총액을 통해 기업의 규모와 시장에서의 위치를 파악하고, 투자를 할지 말지 결정합니다.시가총액 = 주가 X 발생 주식 수 pathlib 패키지pathlib 패키지를 사용하여 이번 절에서 사용할 폴더를 만들어 보겠습니다. 현재 작업 폴더를 'ch_07'이라고 가정합니다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고 파일명을 'step_1_1.py'로 지정하세요. 다음 코드를 입력한 뒤, 대화형 창에서 실행하세요. 현재 직접 폴더의 하위에 'output' 폴더가 생성됩니다.from pathlib import PathWORK_DIR = Path(__file__).parentOUT_DIR = ..
  • 워드 문서에 표와 이미지 삽입하기
    프로그래밍 언어/Python · 댓글
    이제 워드 문서에 표와 이미지를 삽입하는 코드를 만듭니다. add_table() 함수를 정의하여, 데이터 수집, 표 생성 및 이미지 삽입까지 모든 한 번에 처리할 수 있게 만들겠습니다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고, 파일명을 'step_3_2.py'로 변경하세요. 다음과 같이 코드를 입력하고, 실행 아이콘을 클릭하세요. 'output' 폴더에 'step_3_3.docx' 파일이 생성됩니다. ch06/step_3_2.pyimport jsonfrom pathlib import Pathfrom docx.document import Document as DocumentObject # Document 객체from docx.enum.text import WD_PARAGRAPH_ALIGNMENT #..
  • 보고서 작성하기
    프로그래밍 언어/Python · 댓글
    python-docx 패키지의 기본 기능을 사용해 쇼핑 트랜드 보고서를 작성해 보겠습니다. python-docx 패키지는 매우 복잡한 레이아웃을 구현하기 어렵다는 한계가 있지만 마이크로소프트 워드 문서를 생성하고 텍스트, 이미지, 표 등 객체를 삽입하기에는 충분합니다. 워드 문서 작성하기python-docx 패키지를 사용하여 쇼핑 트렌드 보고서를 워드 문서로 작성해 봅시다. 워드 문서를 만들고 보고서 제목을 입력한 후, 파일로 저장하는 순서로 작성할 것입니다.비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_3_1.py'로 지정하세요. 다음 코드를 입력한 후, 대화형 창에서 실행하세요. 'output' 폴더에 'step_3_1.docx' 워드 문서가 생성됩니다. 이 문서를 열면 소스 코..
  • 쇼핑 트렌드 정보 수집하기
    프로그래밍 언어/Python · 댓글
    10대 여성의 패션의류 상품에 대한 트렌드 정보를 수집하는 함수를 작성해 봅시다.비주얼 스튜디오에서 새로운 파일을 만들고, 파일명을 'step_2_3.py'로 지정하세요. 다음 코드를 입력한 후 실행을 클릭하세요. 인스펙터의 Resume 아이콘을 클릭하면, 세부 카테고리를 자동으로 클릭하고 상품의 미리보기 이미지를 캡처하는 것을 확인할 수 있습니다.from step_1_2 import run_playwright # 이전에 작성한 모듈을 불러옵니다.from step_1_3 import goto_best_goodsfrom step_2_1 import select_category, select_optionsfrom step_2_2 import take_screenshotsdef fetch_trends_by_f..
  • 쇼핑 트렌드 정보 수집하기
    프로그래밍 언어/Python · 댓글
    동일한 역할과 이름을 가진 요소가 여러 개 있을 경우, 인스펙터의 코드 녹화 기능이 제대로 작동하지 않을 수 있습니다. 복잡한 HTML 요소를 찾을 때는 CSS 셀렉터를 사용해야 합니다.CSS는 HTML 요소를 디자인하는데 사용되며 CSS 셀렉터는 스타일일 적용할 특정 요소를 찾는 규칙을 의미합니다. 아래 표에서 몇 가지 중요한 CSS 셀렉터를 소개합니다. 참고로 표에 나오는 클래스는 HTML 태그의 class 속성 값으로 사용하는 CSS 셀럭터를 의미하며, 파이썬의 클래스와는 다른 개념입니다. CSS 주요 셀럭터 CSS 셀렉터 규칙 사용 예시 의미 태그 이름imgimg 태그 전체[태그 속성][href]href 속성이 있는 태그 전체[태그 속성="문자열"][role="button"]role 속성 값이..
  • 웹상의 동작 자동화하기
    프로그래밍 언어/Python · 댓글 1
    playwright는 웹 앱 테스트를 위한 패키지입니다. 테스트 외에도 앱에서 사용할 수 있는 강력한 자동화 도구를 제공하며, 데이터 수집, 웹 사이트 로그인, 댓글 작성, 예약 매매 등 자동화에도 폭넓게 사용됩니다. 여기서는 playweight의 코드 녹화 기능을 이용해서 웹상의 다양한 동작을 자동화해 볼것입니다.playweight는 구글의 오픈소스 웹 브라우저 크로미움(Chromium)을 기본으로 사용합니다. 크롬(Chrome)에 비해 다소 생소한 이름이지만 구글 크롬과 마이크로소프트 에지(Edge) 역시 크로미움을 기반으로 만든 브라우저이며, 새로운 기능이 추가될 때도 크로미움에 우선 적용한 뒤 안정성이 검증되면 크롬에 반영됩니다. 파이썬 패키지 준비하기pathlib 패키지pathlib 패키지를 ..
  • 번역 기능이 추가된 문자 인식 웹 앱 만들기
    프로그래밍 언어/Python · 댓글
    비주얼 스튜디오 코드에소 새로운 파일을 만들고, 파일명을 'step_3_4.py'로 작성한 후, 다음 코드를 입력하세요. 그러고 나서 터미널을 열고 'stream run ch_05/step_3_4.py'라고 입력하면 번역 기능으 추가된 문자 인식 웹 앱을 사용할 수 있습니다. from pathlib import Pathimport streamlit as stfrom step_1 import OUT_DIR # 이전에 작성한 모듈을 불라옵니다.from step_3_3 import OUT_3_3, read_text_and_fill_areast.title("✌ 만들면서 배우는 문자 인식 웹 앱") # 웹 앱 제목uploaded = st.file_uploader("인식할 이미지를 선택하세요.") # 웹 앱 제목..
  • 외국어 번역 함수 만들기
    프로그래밍 언어/Python · 댓글
    소스 코드 'step_3_1.py'를 활용하여 외국어 번역 함수를 만들어 봅시다. 비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_3_2.py'로 지정하세요. 다음 코드를 입력한 후, 대화형 창에서 실행하면 문자 인식 결과가 한국어로 변역됩니다.from pathlib import Pathimport deeplfrom step_1 import IN_DIRfrom step_2_2 import read_textdef read_text_translated(path: Path) -> list: # 06 text_list = read_text(path) # 문자 인식 함수 # 07 DEEPL_KEY = "37d1c222-b030-40a9-86e2-8635b079ea62:fx" # DE..
  • DeepL 번역 기능 추가하기
    프로그래밍 언어/Python · 댓글
    DeepL 번역기를 활용하여 이미지에서 인식된 문자를 번역합니다. 웹 브라우저에서 DeepL(https://www.deepl.com)에 접속하고 직접 텍스트를 입력해 다른 언어로 번역해 보세요. 왼쪽 입력란에 텍스트를 입력하고 입력 언어를 선택한 다음, 오른쪽 출력란에 출력 언어를 선택하면 됩니다. DeepL API 사용하기DeepL 번역기를 활용해 와국어를 번역해 봅시다. API 서비슷를 사용하면 DeepL에 직접 접속하지 않아도 외국어 번역 서비스를 이용할 수 있어요. 01 DeepL에 접속하여 오른쪽 상단의 [무료 체험 시작하기] - [DeepL API] - [무료 회원가입] 메뉴를 통해 회원가입한 후, 화면 안내에 따라 'DeepL API Free' 서비스를 신청하세요, 이때 API의 부정 사용을..
  • 문자 인식 웹 앱 만들기
    프로그래밍 언어/Python · 댓글
    streamlit 패키지를 사용해서 지금까지 실습만 문자 인식 프로그램을 웹 앱으로 만들어 보겠습니다. 웹 앱에 이미지 파일을 업로드하면, 함수 read_text_and_draw_line()을 사용해서 이미지 속 문자를 인식하고 바운딩 박스를 그린 결과를 출력한 것입니다. 웹 앱의 레이아웃을 간단히 그려 보면 다음과 같습니다.비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_2_4.py'로 지정한 후, 다음 코드를 입력하세요.from pathlib import Pathimport streamlit as stfrom step_1 import OUT_DIRfrom step_2_3 import OUT_2_3, read_text_and_draw_linest.title("✌ 만들면서 배우는 문자..

종목별 시가총액 데이터 수집하기 - 종목별 시가총액 데이터 수집하기(2)

시가총액 수집 함수playwirght 패키지의 녹화 기능을 사용해 생성한 코드와 개발자 도구의 검사 모드에서 추출한 HTML 태그를 바탕으로 시가총액을 구집하는 함수 parse_table_kospi()를 만들어 사용합니다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고, 파일명을 'step_1_3.py'로 저장합니다. 다음 코드를 입력한 뒤 실행 아이콘을 클릭하여 실행합니다. 크로미움 웹 브라우저를 사용하여 네이버페이 증권에서 코스피 시가총액 데이터를 수집한 후, JSON 형식으로 저장합니다. ch07/step_1_3.pyimport jsonfrom pathlib import Pathfrom playwright.sync_api import Pagefrom step_1_1 import OUT_DIRfrom..

종목별 시가총액 데이터 수집하기 - 종목별 시가총액 데이터 수집하기(1)

이제부터 코스피 종목별 시가총액 데이터를 수집하는 함수를 만들어 봅시다. playwright 패키지와 크로미움 웹 브라우저를 사용하여 네이버페이 증권에 접속한 후 데이터를 수집할 것입니다.네이버페이 증권https://finance.naver.com/ Npay 증권국내 해외 증시 지수, 시장지표, 뉴스, 증권사 리서치 등 제공finance.naver.com 웹 동작 자동화본격적인 데이터 수집에 앞서, playweight 패키지를 사용하여 크로미움 웹 브라우저와 인스펙터를 실행하는 함수 run_playwright()를 만들어 봅시다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고, 파일명을 'step_1_2.py'로 지정합니다. 다음 코드를 입력한 뒤 실행 아이콘을 클릭하여 실행하면 크로미움 웹 브라우저를 ..

종목별 시가총액 데이터 수집하기 - 파이썬 패키지 준비하기

시가총액은 기업의 주가에 발생 주식 수를 곱한 지표로, 기업의 시작 가치를 나타내는 중요한 척도입니다. 투자자들은 시가총액을 통해 기업의 규모와 시장에서의 위치를 파악하고, 투자를 할지 말지 결정합니다.시가총액 = 주가 X 발생 주식 수 pathlib 패키지pathlib 패키지를 사용하여 이번 절에서 사용할 폴더를 만들어 보겠습니다. 현재 작업 폴더를 'ch_07'이라고 가정합니다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고 파일명을 'step_1_1.py'로 지정하세요. 다음 코드를 입력한 뒤, 대화형 창에서 실행하세요. 현재 직접 폴더의 하위에 'output' 폴더가 생성됩니다.from pathlib import PathWORK_DIR = Path(__file__).parentOUT_DIR = ..

워드 문서에 표와 이미지 삽입하기

이제 워드 문서에 표와 이미지를 삽입하는 코드를 만듭니다. add_table() 함수를 정의하여, 데이터 수집, 표 생성 및 이미지 삽입까지 모든 한 번에 처리할 수 있게 만들겠습니다.비주얼 스튜디오 코드에서 새로운 파일을 생성하고, 파일명을 'step_3_2.py'로 변경하세요. 다음과 같이 코드를 입력하고, 실행 아이콘을 클릭하세요. 'output' 폴더에 'step_3_3.docx' 파일이 생성됩니다. ch06/step_3_2.pyimport jsonfrom pathlib import Pathfrom docx.document import Document as DocumentObject # Document 객체from docx.enum.text import WD_PARAGRAPH_ALIGNMENT #..

보고서 작성하기

python-docx 패키지의 기본 기능을 사용해 쇼핑 트랜드 보고서를 작성해 보겠습니다. python-docx 패키지는 매우 복잡한 레이아웃을 구현하기 어렵다는 한계가 있지만 마이크로소프트 워드 문서를 생성하고 텍스트, 이미지, 표 등 객체를 삽입하기에는 충분합니다. 워드 문서 작성하기python-docx 패키지를 사용하여 쇼핑 트렌드 보고서를 워드 문서로 작성해 봅시다. 워드 문서를 만들고 보고서 제목을 입력한 후, 파일로 저장하는 순서로 작성할 것입니다.비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_3_1.py'로 지정하세요. 다음 코드를 입력한 후, 대화형 창에서 실행하세요. 'output' 폴더에 'step_3_1.docx' 워드 문서가 생성됩니다. 이 문서를 열면 소스 코..

쇼핑 트렌드 정보 수집하기

10대 여성의 패션의류 상품에 대한 트렌드 정보를 수집하는 함수를 작성해 봅시다.비주얼 스튜디오에서 새로운 파일을 만들고, 파일명을 'step_2_3.py'로 지정하세요. 다음 코드를 입력한 후 실행을 클릭하세요. 인스펙터의 Resume 아이콘을 클릭하면, 세부 카테고리를 자동으로 클릭하고 상품의 미리보기 이미지를 캡처하는 것을 확인할 수 있습니다.from step_1_2 import run_playwright # 이전에 작성한 모듈을 불러옵니다.from step_1_3 import goto_best_goodsfrom step_2_1 import select_category, select_optionsfrom step_2_2 import take_screenshotsdef fetch_trends_by_f..

쇼핑 트렌드 정보 수집하기

동일한 역할과 이름을 가진 요소가 여러 개 있을 경우, 인스펙터의 코드 녹화 기능이 제대로 작동하지 않을 수 있습니다. 복잡한 HTML 요소를 찾을 때는 CSS 셀렉터를 사용해야 합니다.CSS는 HTML 요소를 디자인하는데 사용되며 CSS 셀렉터는 스타일일 적용할 특정 요소를 찾는 규칙을 의미합니다. 아래 표에서 몇 가지 중요한 CSS 셀렉터를 소개합니다. 참고로 표에 나오는 클래스는 HTML 태그의 class 속성 값으로 사용하는 CSS 셀럭터를 의미하며, 파이썬의 클래스와는 다른 개념입니다. CSS 주요 셀럭터 CSS 셀렉터 규칙 사용 예시 의미 태그 이름imgimg 태그 전체[태그 속성][href]href 속성이 있는 태그 전체[태그 속성="문자열"][role="button"]role 속성 값이..

웹상의 동작 자동화하기

playwright는 웹 앱 테스트를 위한 패키지입니다. 테스트 외에도 앱에서 사용할 수 있는 강력한 자동화 도구를 제공하며, 데이터 수집, 웹 사이트 로그인, 댓글 작성, 예약 매매 등 자동화에도 폭넓게 사용됩니다. 여기서는 playweight의 코드 녹화 기능을 이용해서 웹상의 다양한 동작을 자동화해 볼것입니다.playweight는 구글의 오픈소스 웹 브라우저 크로미움(Chromium)을 기본으로 사용합니다. 크롬(Chrome)에 비해 다소 생소한 이름이지만 구글 크롬과 마이크로소프트 에지(Edge) 역시 크로미움을 기반으로 만든 브라우저이며, 새로운 기능이 추가될 때도 크로미움에 우선 적용한 뒤 안정성이 검증되면 크롬에 반영됩니다. 파이썬 패키지 준비하기pathlib 패키지pathlib 패키지를 ..

번역 기능이 추가된 문자 인식 웹 앱 만들기

비주얼 스튜디오 코드에소 새로운 파일을 만들고, 파일명을 'step_3_4.py'로 작성한 후, 다음 코드를 입력하세요. 그러고 나서 터미널을 열고 'stream run ch_05/step_3_4.py'라고 입력하면 번역 기능으 추가된 문자 인식 웹 앱을 사용할 수 있습니다. from pathlib import Pathimport streamlit as stfrom step_1 import OUT_DIR # 이전에 작성한 모듈을 불라옵니다.from step_3_3 import OUT_3_3, read_text_and_fill_areast.title("✌ 만들면서 배우는 문자 인식 웹 앱") # 웹 앱 제목uploaded = st.file_uploader("인식할 이미지를 선택하세요.") # 웹 앱 제목..

외국어 번역 함수 만들기

소스 코드 'step_3_1.py'를 활용하여 외국어 번역 함수를 만들어 봅시다. 비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_3_2.py'로 지정하세요. 다음 코드를 입력한 후, 대화형 창에서 실행하면 문자 인식 결과가 한국어로 변역됩니다.from pathlib import Pathimport deeplfrom step_1 import IN_DIRfrom step_2_2 import read_textdef read_text_translated(path: Path) -> list: # 06 text_list = read_text(path) # 문자 인식 함수 # 07 DEEPL_KEY = "37d1c222-b030-40a9-86e2-8635b079ea62:fx" # DE..

DeepL 번역 기능 추가하기

DeepL 번역기를 활용하여 이미지에서 인식된 문자를 번역합니다. 웹 브라우저에서 DeepL(https://www.deepl.com)에 접속하고 직접 텍스트를 입력해 다른 언어로 번역해 보세요. 왼쪽 입력란에 텍스트를 입력하고 입력 언어를 선택한 다음, 오른쪽 출력란에 출력 언어를 선택하면 됩니다. DeepL API 사용하기DeepL 번역기를 활용해 와국어를 번역해 봅시다. API 서비슷를 사용하면 DeepL에 직접 접속하지 않아도 외국어 번역 서비스를 이용할 수 있어요. 01 DeepL에 접속하여 오른쪽 상단의 [무료 체험 시작하기] - [DeepL API] - [무료 회원가입] 메뉴를 통해 회원가입한 후, 화면 안내에 따라 'DeepL API Free' 서비스를 신청하세요, 이때 API의 부정 사용을..

문자 인식 웹 앱 만들기

streamlit 패키지를 사용해서 지금까지 실습만 문자 인식 프로그램을 웹 앱으로 만들어 보겠습니다. 웹 앱에 이미지 파일을 업로드하면, 함수 read_text_and_draw_line()을 사용해서 이미지 속 문자를 인식하고 바운딩 박스를 그린 결과를 출력한 것입니다. 웹 앱의 레이아웃을 간단히 그려 보면 다음과 같습니다.비주얼 스튜디오 코드에서 새로운 파일을 만들고, 파일명을 'step_2_4.py'로 지정한 후, 다음 코드를 입력하세요.from pathlib import Pathimport streamlit as stfrom step_1 import OUT_DIRfrom step_2_3 import OUT_2_3, read_text_and_draw_linest.title("✌ 만들면서 배우는 문자..