목록Python/Do something (30)
CDW (Coding Discussion World)

어떤 서버에 접속해서 API Request로 정보(JSON 형식)를 긁어온다음에 다시 주기적으로(1분 등) DB에 넣고자 한다. curl을 통해서 Request를 날릴 예정인데 그냥 JSON 형식을 가공하는것만 봐도 좋을 듯 하다. 우선 curl로 request를 날리면 아래와 같이 response 가 온다고 가정한다. 복잡하다.. JSON 형식인데 어떤 형태인지 정리가 안된다. 이럴떄는 JSON 형식을 알아보기 쉽게 변환해보자. 변환할떄는 구글에 'JSON 형식 변환' 이런식으로 검색하면 많이 나온다. 우선 아래 링크를 통해서 변환하고자 한다. http://json.parser.online.fr/ ㅇ 변환전은 아래처럼 복잡하다. {"performances":[{"performance_metric..
이전편에서 PC(server~client)간 파일 전송하는 것을 만들어보았는데 파일을 한번만 전송하면 종료되었다.. 이번에는 thread를 이용해서 주기적으로 파일을 전송하고자 한다. 결론적으로는 client PC는 설정된 시간마다 주기적으로 server PC에 있는 장비 리스트를 가져온 후, 해당 장비 리스트에 대해 ping test를 진행하고 결과값을 다시 Server PC로 보내주고자 한다. 혹시 원본파일이 필요하면 쪽지나 댓글 주세요^^ 우선 서버쪽부터 살펴보도록 한다. import time import socket import threading import os from os.path import exists print("SERVER(10)") def run_server1(port, dire..

파이썬으로 PC간에 파일 전송을 하는 프로그램을 만들어서 Client에서 Server로 파일을 보내고, 받고 다 해보고 싶다. 고민한 방법은 몇 가지가 있다.. 1. 그 중에서 가장 쉬워 보이는 방법으로 Server용으로 사용할 PC에 FTP 설정을 해놓고 Client PC에서 파이썬의 ftplib 모듈을 이용해서 FTP접속 및 파일 GET, PUT 등을 하는 방법? 2. 1번과 유사한데 FTP Server 설정까지 파이썬으로 구동 하는 방법? 이 있다. 구글링 해보니 pyftpdlib를 쓰면 되는 것 같은데 이것도 천천히 확인해 봐야겠다. 좀 더 보니 이런것도 있네? 뭔 내용인지는 천천히 살펴 봐야겠다.. 3. 마지막으로는 socket 통신을 이용한 방법이다. socket에 대한 설명은 ..
이전에 ping test 결과를 txt 파일로 저장하는 것을 진행했었고, txt 파일을 mysql에 INSERT 하는 것을 진행했었따. 그럼 한개의 파이썬 파일로 ping test 결과를 txt 파일로 저장도 하고, mysql에 INSERT 하려면 어떻게 해야 할까? 1. test 하고자 하는 IP들이 저장된 txt 파일(system_list.txt)을 준비 2. system_list.txt 파일에 있는 IP list에 따라 ping test 결과를 확인하고 ping_result.txt 파일로 저장 3. 저장된 ping_result.txt 파일을 mysql DB에 저장 사실, 해당 작업을 진행하면서 많은 시행착오가 있었는데 해당 내용도 최대한 기록해보고자 한다. 내용이 이해가 가지 않는다면 이전 글을..

pymysql을 통해 mysql의 Database, Table을 생성하고 해당 Table에 Data를 수동으로도 넣어보고, txt 파일을 읽어서도 넣어보고자 한다. 우선 pymysql 모듈을 설치한다. pip install pymysql 이제 Mysql에 접속해서 현재 Database를 조회해본다. 신규로 생성할 Database의 이름은 hanguptest_2로 한다. ##Database 생성 절차 'hanguptest_2' import pymysql conn = pymysql.connect(host='localhost', user='root', password='root', charset='utf8') cursor = conn.cursor() sql = "CREATE DATABASE hanguptest..