Python/Python Programming
-
[ Python ] Python ORM sqlalchemy 이용한 DataFrame Data InsertPython/Python Programming 2023. 9. 29. 22:39
SQLAlchemy 은 대표적인 파이썬 ORM 이다. ORM이란 객체 관계 매핑(Object Relational Mapping)으로 데이터베이스 내의 테이블들을 객체화하여 각 DBMS에 대해서 CRUD (Create(생성), Read(읽기), Update(갱신), Delete(삭제)) 등 을 사용할 수 있다. 프로그램이 커지게 되면, SQL쿼리도 많아지게 되는 데, 반복되는 SQL 쿼리를 처리하기 유용하다. 1. 모듈설치 pip install pandas pip install SQLAlchemy 2. 접속 import pandas as pd from sqlalchemy import create_engine # DataFrame 생성 df = pd.DataFrame(rows,columns=['Col_A',..
-
[ AWS ] Python boto3를 이용한 RDS 변경 가능한 인스턴스 타입 확인하기Python/Python Programming 2023. 6. 15. 18:14
현재 Mysql 8.0.32에서 db.t3.medium 인스턴스를 운영하고 있고, AWS Graviton2 인스턴스로 변경 하려한다. rds의 client.describe_orderable_db_instance_options 메소드를 이용하여 확인 가능하다. import boto3 client = boto3.client('rds') def OrderableDBInstance(Engine,EngineVersion,dbInstanceclass): response = client.describe_orderable_db_instance_options( Engine=Engine, EngineVersion=EngineVersion, DBInstanceClass=dbInstanceclass, MaxRecords=12..
-
[ Python ] mp4 url 다운로드 후 다이렉트 S3 저장Python/Python Programming 2023. 5. 25. 14:27
import requests as req import boto3 s3 = boto3.client('s3') def mp4_save_s3(): url = 'url' # mp4 download url key = 'test.mp4' bucket = 'bucketname' # bucketname res = req.get(url) res = s3.put_object(Bucket=bucket, Body=res.content, Key=key) return res['ResponseMetadata']['HTTPStatusCode'] mp4_save_s3() ------------------------------------------------------------- 200
-
[ Python ] requests 모듈 다양한 이용Python/Python Programming 2023. 5. 25. 11:05
설치 : pip install requests 1. Response Text. (Text 출력) import requests with requests.Session() as s: r = s.get(site) print(r.text) 2. Response Status Code. (응답코드 출력) import requests with requests.Session() as s: r = s.get(site) print(r.status_code) 3. Response Encoding. (Encoding 출력) import requests with requests.Session() as s: r = s.get(site) print(r.encoding) 4. Response Hearders. (Hearders 출력..
-
[ Python ] 정규식 이용한 IP address 마스킹(감추기) 하기Python/Python Programming 2023. 5. 24. 17:21
정보보호를 목적으로 IP주소의 3번째 옥텟을 마스킹 처리해야 할 때, 정규식을 이용하여 마스킹 처리를 할 수 있다. import re ipaddress = ('172.168.10.12', '192.168.2.11','192.168.114.12','11.12.0.14') p1 = re.compile(r"(\d+)[.](\d+)[.](\d+)[.](\d+)") # 정규식 패턴과 추출할 그룹 지정. 3번째 옥텟 for i in ipaddress: m1 = p1.search(i) print(m1.group(1) + '.' + m1.group(2) + '.' + '***' + '.' + m1.group(4)) ----------------------------------------------------------..
-
[ Python ] Prometheus metric 값 가져오기Python/Python Programming 2023. 5. 24. 13:56
Python을이용하여 promQL 쿼리하여 값 가져오기 Sample Metric : jvm_memory_used_bytes import requests from datetime import datetime instance = '127.0.0.1:8080' job = 'spring' query = 'sum(jvm_memory_used_bytes{area="heap", instance="%s", job="%s"})' % (instance,job) def prometheus_data(instance,jop,query): response = requests.get('http://127.0.0.1:9090/api/v1/query', params={'query': query}) response = response...
-
[ Python ] Linux 파일 (스토리지) 연도별 개수와 총 용량 구하기Python/Python Programming 2023. 5. 24. 00:22
from os import walk from os.path import getsize from os.path import getmtime from datetime import datetime from os import chdir chdir(path) resultFile = 'result.csv' for (path, dir, files) in walk('.'): for filename in files: ext = filename.split('.')[-1] size = getsize(path + '\\' + filename) mtime = str(datetime.fromtimestamp(getmtime(path + '\\' + filename)))[:19] lst = '#'.join([ path, filen..