본문 바로가기
반응형

개발/python25

[Python] sys.argv로 프로그램 인자값 받기 sys = system argv = arguments value sys.argv는 단어 그대로 풀어쓰면 시스템 인자값이라는 뜻이다. sys.argv의 첫 번째 값인 sys.argv[0]은 기본적으로 실행하는 파이썬 스크립트의 경로이다. 고로 어느 환경에서 실행하든 이 값은 무조건 존재한다. import sys print("파이썬 스크립트 경로: ", sys.argv[0]) print("인자값 길이: ", len(sys.argv)) print("모든 인자값 출력: " , str(sys.argv)) 해당 파일을 실행하면 다음과 같이 실행된 파일 경로가 나온다. 파이썬 스크립트 경로: util/db_helper.py 인자값 길이: 1 모든 인자값 출력: ['util/db_helper.py'] (+참고로 AWS.. 2019. 5. 29.
[Python] Service Account로 구글 스프레드시트 업데이트하기 읽지 않아도 되는 서론; 구글 시트를 업데이트하려면 당연히 별도의 인증절차가 필요하다. 업데이트하려는 자가 그 시트에 대한 접근 권한이 있는지 알아야 하기 때문이다. 이건 시트 공유 설정을 '링크가 있는 모든 사용자가 수정할 수 있음'으로 해도 마찬가지다. 한편 구글에서 제공한 Python Quickstart를 보면 OAuth 2.0 클라이언트 인증을 사용하는데, 이렇게 하면 유저가 구글 로그인을 해서 권한을 얻어 시트를 열거나 수정할 수 있다. 다만 내 시트를 내가 수정하는 경우 이 방법을 사용하면 매우 귀찮다는 생각이 든다. 유저 정보가 필요한 게 아니고 내 애플리케이션을 가지고 작업하는 거니까. 물론 별도의 작업을 거쳐 OAuth 클라이언트로도 로그인 없이 작업을 수행할 수 있지만 약간 번거롭다. .. 2019. 4. 15.
[Python] BeautifulSoup로 웹사이트 크롤링하기 TL;DR 2016년 BeautifulSoup로 YouTube에서 영상 정보를 크롤링 해보자 라는 글을 올린 적 있는데 이게 의외로 스테디셀러(?)라 2019년 버전으로 업데이트하고자 한다. 초심자들을 위한 글이기 때문에 난이도는 굉장히 낮다. 다만 그동안 유튜브의 HTML 구조가 바뀌어서 초심자가 크롤링하기에는 좀 번거롭고 향후 또 변경될 여지가 많아 대상을 프로젝트 오일러 한국 사이트로 변경했다. 이곳을 선택한 이유는 관리자들이 사이트를 절대 업데이트하지 않아서(ㅋㅋㅋ). 근데 그전에 이 사이트가 크롤링을 허용하는지부터 알아보자. 대부분의 사이트는 그들의 루트 경로 아래에 robots.txt라는 파일을 두어 크롤링에 대한 규약을 써놓는데, 보통 크롤링을 허용하거나 허용하지 않는 페이지들이 적혀있다. .. 2019. 4. 2.
[Python] 잘 알려져 있지 않은 파이썬 기능 'Hidden features of Python' 언젠가 스택오버플로에서 찾았는데, 파이썬에서 잘 알려져 있지 않은 기능을 공유하는 글이다. (다만 스택오버플로의 취지에는 맞지 않는 질문이라 지금은 close 됨)한 번에 읽기에는 좀 길어서 북마크해뒀었는데 가끔 보면서 흥미로운 게 있으면 적어놨다. Function argument unpacking 별표(*;asterisk) 연산자를 사용하여 리스트나 딕셔너리를 언패킹할 수 있다.>>> a = [1, 2, 3, 4, 5] >>> print(*a) 1 2 3 4 5 >>> b = {'a': 1, 'b': 2, 'c': 3, 'd': 4} >>> print(*b) a b c d오와!했지만 손이 안 가서 쓰지 않는다.아웃! C 스타일 코딩을 가능케 하는 모듈 .. 2019. 3. 19.
반응형