본문 바로가기

[ ★ ]Study195

[Python] 방화벽 로그 DB삽입 너무 대충 짠 코드 import pymysql import ipaddress from datetime import datetime import time import re conn = pymysql.connect(host='localhost', user='userID', password='1234', db='DB', charset='utf8') curs = conn.cursor() sql = "insert into firewall(date, fwrule, src_ip, src_mac, src_port, dst_ip, dst_port)\ values (%s, %s, %s, %s, %s, %s ,%s)" logfile_path = '로그파일경로' logfile_fullpath = logfile_path + '.. 2020. 12. 8.
OSError: Invalid argument (python UTC time) 상황 윈도우10 pro / python 3.8.5 / 사용 라이브러리 : python-evtx 윈도우 이벤트 로그를 분석하다가 아래와 같은 에러가 나타났다. Traceback (most recent call last): File "D:/Pycharm/Project/evtx/test.py", line 15, in soup = BeautifulSoup(record.xml(), "lxml") File "D:\Project\lib\site-packages\Evtx\Evtx.py", line 481, in xml return e_views.evtx_record_xml_view(self) File "D:\Project\lib\site-packages\Evtx\Views.py", line 204, in evtx_re.. 2020. 9. 25.
파이썬 cp949 에러 : python UnicodeEncodeError 윈도우 이벤트 로그 파싱하다가 txt로 뽑으려는 찰나에 아래와 같은 오류를 발견했다. UnicodeEncodeError: 'cp949' codec can't encode character '\u200e' in position 0: illegal multibyte sequence import sys import io sys.stdout = io.TextIOWrapper(sys.stdout.detach(), encoding = 'utf-8') sys.stderr = io.TextIOWrapper(sys.stderr.detach(), encoding = 'utf-8') 혹은 # -*- encoding: utf-8 -*- 맨 위에 둘 중 하나 추가해 주면 해결된다. 2020. 9. 24.
Python TypeError : 파이썬 타입에러 에러명 : TypeError: expected string or bytes-like object 상황 정규표현식을 사용하여 문자열안에서 숫자를 뽑아내려고 했다. import re tmp = re.findall("\d+", 문자열) 문자열 타입이 str 타입이 아니기 때문이었다. 문제해결 방법 - 바꾸려는 문자열의 type을 확인하자. - 에러 코드명을 잘 확인하자 가운데 return _compile 부분을 보면 findall(string) 이라고 적혀있다. 즉, 상대하려는 문자열은 str type이어야 한다는 것이다. 귀찮다 보니 "아~ 왜이래ㅐㅐ" 라고만 생각하고 귀찮아 하는 것 같다. 큰일이다. 2020. 9. 18.
파이썬 mysql 로그 삽입 pymysql 을 이용한 mysql db로그 삽입하기. import pymysql conn = pymysql.connect(host='localhost', user='hello_mysql', password='1', db='logs', charset='utf8') curs = conn.cursor() sql = "insert into access_log(ip, access_time, method, uri, status)\ values (%s,%s, %s, %s,%s)" logfile_path = '/경로/' logfile_fullpath = logfile_path + '파일이름' count = 0 with open(logfile_fullpath, 'r') as f: for line in f: count .. 2020. 8. 25.
MYSQL 비밀번호 정책 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements mysql에서 SHOW VARIABLES LIKE 'validate_password%'; 비밀번호 정책을 확인할 수 있다. 변경은 아래와 같이. SET GLOBAL validate_password.policy=LOW; 길이변경 SET GLOBAL validate_password.length=1; 2020. 8. 24.