파이썬 16

[Python] 사진을 이용해서 워드클라우드로 출력하기

워드클라우드 실행 시 사각형 화면에 키워드 값이 무작위로 출력됩니다.이를 특정 사진과 동일한 규격과 색깔로 만들어주는 작업을 거치는 방법입니다.  먼저 필요 라이브러리를 추가해줍니다.from wordcloud import WordCloudimport matplotlib.pyplot as pltfrom PIL import Imageimport numpy as npfrom wordcloud import ImageColorGenerator 먼저 tdata를 통하여 메모장에 적힌 단어값을 불러오고, 기준이 될 사진을 가져와 마스크를 만들어줍니다.tdata = ''filename = 'temp.txt'with open(filename, 'r', encoding="utf-8") as file: for ..

[Python] User-Agent 우회 (requests로 디시 접속 불가 시)

기존 python requests 로 사이트 접속 불가 시 user-agent를 설정하여 접속이 가능합니다. import requests# requests 라이브러리에서 기본으로 사용하는 User-Agent 문자열을 출력default_ua = requests.utils.default_user_agent()print("Default User-Agent:", default_ua)headers = { "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) " "AppleWebKit/537.36 (KHTML, like Gecko) " "Chrome/115.0.0.0 Safari/537.36"}r = ..

카테고리 없음 2025.02.02

[Python] imgur api로 imgur에 사진 업로드하기

ImgurImgur: The magic of the Internetimgur.com가장 먼저 위 링크에서 API 키를 발급받습니다. 아래의 코드에 알맞게 자신의 ID 및 API를 입력한 후 출력되는 링크를 이용하여 웹에서 이미지를 이용할 수 있습니다.import requestsimport base64import jsonheaders = {"Authorization": "Client-ID " + "imgur ID 입력"}url = "https://api.imgur.com/3/upload.json"t_img = ''print('이미지 업로드 중...')r = requests.post( url, headers = headers, data = { 'key': "Key 입력", ..

[Python] 로컬 이미지를 클립보드에 복사하기

컴퓨터 내부 저장소에 저장되어 있는 사진들을 클립보드로 복사하는 코드입니다. 셀레니움 작업 중 작성중인 게시글에서 클립보드로 복사 붙여넣기가 가능한 경우 사용할 수 있습니다. from PIL import Imagefrom io import BytesIOimport win32clipboardimage = Image.open("local")# 이미지 데이터를 BMP 형식으로 변환output = BytesIO()image.convert("RGB").save(output, "BMP")bmp_data = output.getvalue()[14:] # BMP 헤더 제거output.close()# 클립보드에 이미지 복사win32clipboard.OpenClipboard()win32clipboard.EmptyClipb..

[Python] 파이썬으로 원격 데스크톱 활성화

컴퓨터에 기본적으로 존재하는 RDP 기능을 활성화 시키기 위해서는 총 5가지의 작업이 필요합니다. 1. 레지스트리 설정을 통한 원격 데스크톱 기능 활성화2. 레지스트리 설정을 통한 접속 포트 번호 설정3. 제어판 내의 네트워크 설정을 통한 RDP 기능 활성화 설정4. 네트워크 설정을 통한 레지스트리 포트 번호 허용 방화벽 규칙 설정5. 원격 데스크톱 서비스 재시작 및 작동 확인 제어판 및 레지스트리에 메뉴에서 기본적으로 활성화 가능하지만 적용이 필요한 컴퓨터가 많을 경우 exe 프로그램을 배포 시 용이합니다. 먼저 필요한 라이브러리를 추가해주고, 그 뒤 필요한 함수들을 각각 생성합니다.import subprocessimport timeimport sys 레지스트리 내의 원격 데스크톱 허용 항목을 사용하도..

[Python] Paramiko 를 통한 SSH 접속

Paramiko는 Python에서 SSH 프로토콜을 통하여 접속 할 수 있도록 도와주는 라이브러리입니다. 한마디로 Putty를 Python에서도 사용할 수 있도록 도와줍니다. 테스트 환경은 포티게이트(방화벽) 및 코어엣지(스위치) 이였으며, 정상적으로 작동하는 것을 확인하였습니다.  먼저 SSH 통신을 위한 paramiko 라이브러리와 연결 시 대기를 위한 time 라이브러리를 가져옵니다. import paramikoimport time 그 다음 SSHClient의 세션 객체를 만들어주고,세션 접속 시 호스트 키가 자동으로 인증받도록 있도록 접속을 허용합니다. (보안 상으로는 용이하지 않습니다.) 이후 호스트 IP와 계정 정보를 통하여 SSH에 접속해주고,지속적인 통신을 위하여 invoke_shell 명..

[Python] 웹페이지와 작업표시줄 같이 캡처하기 (image, selenium)

(캡처 예제 사이트는 이삭토스트 공식 홈페이지입니다.) https://www.isaac-toast.co.kr/ 이삭토스트이삭토스트와 함께한 달콤한 기억이 있나요? 한 손에 담긴 든든한 한 끼, 한 입에 퍼지는 미소! 오늘도 한 손에 담긴 따듯한 토스트로 마음을 전하고 나누며 고객님을 맞이할 준비를 합니다. 어www.isaac-toast.co.kr  팝업창을 끄고 드래그해야만 웹페이지의 끝 지점에 도달하는 사이트를 캡쳐해보겠습니다.  pip install pyautoguipip install Imagepip install selenium 먼저 필요 라이브러리인 pyautogui, Image, selenium 을 설치해줍니다. import time # time 모듈을 임포트하여 sleep 기능을 사용.im..

카테고리 없음 2024.06.10

[Python] 파이썬 코드를 exe로 만들기(pyinstaller)

pyinstaller이라는 라이브러리를 사용할 것입니다. 먼저 pyinstaller를 설치해줍시다. pip install pyinstaller 설치가 완료되었으면 원하는 파일을 exe화 시켜봅시다. pyinstaller [파이썬 파일 이름].py 위와 같이 뜨면 exe 파일이 성공적으로 생성된 것입니다. 이후 파이썬 파일이 있던 위치에 위와 같은 3개의 파일이 생기는데, spec은 pyinstaller 가 실행파일을 만드는데 필요한 설정이 저장된 파일이며, build는 스크립트를 분석하고 실행 파일을 만드는 과정에서 생성되는 임시 파일들이 저장되는 곳, dist는 최종적으로 실행할 파일이 저장되는 곳입니다. 만약 콘솔창 없이, 실행 파일 하나만 생성하고 싶다면 해당 명령어를 추가시켜 주면 됩니다. -w ..

[Python] 파일을 찾을 수 없다는 오류

가끔씩 No such file or directory 오류가 뜨는 경우가 있습니다. 이때, 파이썬 파일이 있는 위치에 불러오려는 파일이 있어도 이러한 오류가 뜨는데 이는 보통 작업 디렉토리를 경로를 절대 경로로 설정해주지 않아 생기는 오류입니다. 이를 해결하기 위해선 getcwd와 chdir를 사용해주면 됩니다. getcwd는 현재 작업 디렉토리를 확인하는 함수이고, chdir 현재 작업 디렉토리를 변경하는 함수입니다. import os print(os.getcwd()) os.chdir('./가상화') print(os.getcwd()) getcwd 함수로 현재 작업 디렉토리를 출력하고, chdir로 디렉토리 경로를 변경한 것을 확인하실 수 있습니다.

[Python] 셀레니움 네이버 로그인

셀레니움을 이용하여 아이디창에 바로 입력해도 되지만, 네이버에서는 비정상적인 로그인 활동으로 감지하여 매크로 확인과 함께 다시 로그인 시키기 때문에, 로그인을 위해서는 직접 입력이 아닌 아이디와 비밀번호를 복사해서 붙여주는 형식으로 로그인이 가능합니다. #네이버 로그인 방법 from selenium import webdriver # 셀레니움 사용 from selenium.webdriver.common.by import By # By.XPATH 사용 from selenium.webdriver.common.keys import Keys # enter 등 커멘드 창 사용 from selenium.webdriver.chrome.options import Options # option 사용 from seleniu..