본문 바로가기

전체 글75

python logging으로 매일 log 만들기 (backupcount 설정 했는데 안 지워 질 때 해결법) 로그를 남기는 방법은 여러가지인데, (매일마다 처리하려고 하니, 스크립트로 만들어서 크론탭 등록, python 로그 파일 없으면 만들고 있으면 거기다 붙여넣는 식으로) python3에 있는 logging을 사용해서 해보려고 한다. logging이란? 일단 로그(log)란, 내가 한 것에 대한 ‘기록’으로 일기와 다름없다. 요즘 유행하는 vlog처럼 내가 오늘 뭘했는지 기록하는 것이다. IT에서 log란 소프트웨어 실행 중에 발생하는 이벤트 등을 기록한 것이다. 이러한 로그를 기록하는 행위는 로깅(logging)이라고 한다. 물론 vlog를 하고 싶어서 하는 사람도 있고 안하고 싶어서 안하는 사람들도 있는 것처럼 개발하면서 확인하고 싶으면 로그 남기는 것이고, 중요하지 않고 안해도 되면 안남기는 것이다. .. 2022. 3. 28.
[멀티캠퍼스 K-Digital 수료 후기] 국비교육 시작하기 전 알아두면 좋은 정보 개인적으로 친구들, 지인으로 부터 연락을 받고 공유했던 내용이 있었는데, 함께 나눈다면 좋을 것 같아서 작성하게 되었다. 요즘 국비교육이 정말 다양하게 있는데, 말은 가 붙지 않더라도 정부에서 일정 금액을 지원 또는 기업체에서 일정 금액을 지원해주고 IT개발자 교육을 진행하는 프로그램들을 자주 볼 수 있다. 최근 네이버 포털에서는 메인에 삼성 SAFFY 광고도 있었고, 멀티캠퍼스 국비교육도 있었다. IT뿐 아니라 다른 교육도 많다. 바리스타 국비교육, 요양보호사 국비교육, 네일아트 국비교육 등 많지만, 4차산업혁명과 더불어 코로나 시국으로 IT와 관련된 기술이 핫해지면서 특수하게 교육생이 많이 늘어나는 추세로 보인다. 네이버 포털에서 국비교육을 검색하면 아무래도 핫한 교육인 IT와 관련된 교육업체들이 최.. 2022. 3. 22.
python get_text 와 string 차이 get_text와 string의 차이를 모르겠어서 이것 저것 테스트를 했다. get_text string 현재 HTML 문서의 모든 텍스트를 한 번에 추출할 수 있다. 태그 내 문자열을 반환 현재 태그를 포함하여 모든 하위 태그를 제거하고 유니코드 텍스트만 들어있는 문자열을 반환한다. -> 항상 맨 뒤에 써야함 태그가 하나라면, 문자값을 가진다면 문자열을 반환한다. 문자열이 없으면 유니코드 형식으로 반환하므로, 출력값이 안나옴. string처럼 None도 표시 안됨 태그가 둘 이상이면 뭘 반환해야 하는지 명확하지 않아서 None을 출력한다. 하위테그까지 들고오려면 get_text 쓰는 것이 좋음 정확하게 또 명시적으로, 정석대로 원한다면 string이 좋음 둘 중 편한대로 쓰면 될 것 같다. from b.. 2022. 3. 14.
20대 대통령 실시간 개표현황 (!!초박빙!!) 와.. 자기 전에 한 번 봤는데 엄청 초 박빙이었다. 나중에 기억할만한 거 같아서, 캡쳐했다. 2022.03.09 투표일 당일 23:50 ~ 2022.03.10 00:30 사이에 네이버에서 시간순서로 캡쳐했다. 또한 유력 마크가 생긴 시점에 캡쳐를 했다. 지금 02:21분인데도 표차이가 많이 나진 않지만, 유력마크가 생겼다. 나는 내 반쪽이랑 미리 사전투표(03.05 토요일!)에 했었는데, 그 때도 정말 사람이 많았다. 아무래도 코로나도 갑자기 심해지고 하다보니, 사람들이 미리미리 투표해야겠다 생각을 했나보다. 오후 4시쯤 갔는데 줄이 엄청 길었고, 투표하러 들어 갔을 때도 계단 전체에 사람들로 꽉 차있었다. (안타깝게도,, 우리동네에서도 코로나 방역을 위한.. 그런 개인위생장갑이나 그런걸 보급해준다고 .. 2022. 3. 10.
한강멍 재택근무 코딩할때 노동요 무가사 유튜버 추천 유튜브 알고리즘의 선택을 받았다. 12~14시간 동안 촬영해서 실시간으로 교통량을 비롯해서 한강 ~ 여의도까지 볼 수 있다. 와.. 한강보이는 집에서 한강뷰를 콘텐츠로 삼아서 유튜브를 시작하다니.. 대단하다. 벌써 구독자도 8만명이 다되어 간다. 집도 좋은데 구독자도 많다.. 왕 부럽다. 채널명도 Daily Seoul Live Camera - Hangang 이다. 나도 저렇게 좋은 집에서 살아보고 싶다... 실시간 댓글들도 ㅋㅋㅋ 보면 코로나 이야기도 많고 저렇게 한강이 보이는 곳에서 살고싶다는 말이 많다. 와.. 얼마나 노력해야 한강이 보이는 집을 살 수 있을까 최근 반포 아크로리버파크 84m2 46억 찍었다는데 뭘 어떻게 해야 46억을 버나.. 평생이어도 벌 수 있을까....? 부럽다. 도대체 누가 .. 2022. 2. 24.
python iframe 렌더링된 페이지 크롤링 하기 아주 큰 깨달음을 얻은 날이다. 왜 계속 iframe 크롤링 하는데 왜!! 리스트가 비어서 출력될까..? 도대체 뭐가 문젤까.. 싶어서 찾아보면서 한 예시로 네이버 금융을 테스트 해보았다. F12를 누르면 개발자 도구가 나오는데, iframe을 눌러서 검색해보면 이렇게 잡혀있고 해당 부분은 src에 적힌 경로대로 다시 렌더링 되어서 페이지가 만들어지기 때문에 attrs로 title까지 얻을 수는 있겠지만 src 이후부터는 가지고 올 수가 없다. 그래서 이걸 어떻게 하면 가지고 올 수 있을까 싶어서 찾아보다가 Selenium을 쓰면 된다는 후기가 많아서 한 번 해봤다. 사실 이 페이지 크롤링 하려고 Selenium까지 쓸 필요는 없는데 워낙 무겁다보니까 근데 테스트 용으로 한 번 해보았다. 추가적으로 해당.. 2022. 2. 16.
python 3에서 바뀐 것 (출력방식, 문자열 인코딩) python2.xx -> python3.xx로 바뀌면서 바뀐게 많지만 크게 내가 보려고 정리해본다. 1. print 차이 python 2.xx에서는 print "하이하이" 이런 식으로 괄호 없이 출력했는데, python 3.xx에서는 print("하이하이") 이렇게 괄호를 붙여야만 출력되고 에러가 나지 않는다. 2. 저장 방식 python 2에서는 ASCII 방식으로 저장되었는데(UNICODE방식도 지원은 되었으나 별도 설정 필요) python 3에서는 기본 저장 방식이 UNICODE이다. 3. string python 2 에서는 default encoding은 ASCII 이다. python 3 에서는 모든 string은 unicode이고, 기본 encoding은 utf-8 이다. (그래서 문자열 앞에 .. 2022. 2. 14.
파이썬 크롤링 User-Agent 파이썬 크롤링에서 user agent를 학습했다. 참고 영상은 아래처러 나도코딩님의 유트브 강좌이다. https://www.youtube.com/watch?v=yQ20jZwDjTE&t=3661s user agent란? 크롬으로 가령 https://naver.com 으로 들어가서 F12(개발자도구)를 켜면 HTTP 패킷 중 Header에 User-Agent가 위치한다. 사람이 정보를 얻기 위해 웹브라우저를 사용하는데 이 웹 브라우저가 어떤 종류이고 어떤 상태인지 적혀 있는 집약체라고 할 수 있다. 웹브라우저라 하면 IE, Edge, Chrome 등등이 있는데 사람마다 휴대폰으로 들어갈 수도 있고, window 11 버전인 os에서 접속할 수도 있다. 이에 따라 화면이 다르게 보이도록 되어 있기 때문에, 크.. 2022. 2. 9.
파이썬 정규표현식 re 사용 requests에 이어 정규표현식 re 라이브러리를 이용해 보았다. 강의는 다음과 같다. https://www.youtube.com/watch?v=yQ20jZwDjTE&t=3154s 정규표현식을 찾아봤는데, 다양한 정의 중 한 가지 공통된 점이 있었다. 복잡한 문자열을 처리할 때 사용하는 기법으로, 특정 패턴을 가진 문자열이 있는지 여부를 확인할 수 있다는 것이다. 예를 들면 다음과 같다. . (ca.e) : 하나의 문자 의미 > care, cafe, case (0) | caffe(X) ^ (^de) : 문자열 시작 > desk, destination(0) | fade(X) $ (se$) : 문자열을 끝 > case, base(O) | fase (X) .. 등등 정규식은 많다! 간단하게 강의 바탕으로 이.. 2022. 2. 9.
파이썬 크롤링 requests 사용 http 응답코드 확인해보는 테스트를 했다. 참고 영상은 다음과 같다. 나중에 다시 한 번 더 봐야겠다. https://www.youtube.com/watch?v=yQ20jZwDjTE 기본적으로 http 응답이 제대로 왔으면 200을 출력하는데, jupyter notebook으로 확인했을 때는 응답코드 200이 찍혔다. import requests res = requests.get("https://naver.com") print("응답코드 :", res.status_code) # 200이면 정상 강제로 에러코드 생기게 url을 만들어서 응답코드 이상하게 나오도록 해보았다. import requests res = requests.get("http://naver.hello.com") print("응답코드 :.. 2022. 2. 8.
반응형