main 썸네일형 리스트형 파이썬 예외 처리 try ... except 문 활용하기 간단한 코드로 바로 결과가 나오는 프로그램이라면 상관 없지만 긴 시간 돌려놔야 하는 코드에서 중간에 에러가 발생하여 동작이 끊긴다면 그야말로 말잇못... 다시 처음부터 할 생각에 아득해진다. 간만에 크롤링 작업을 하고 있었는데 URL이 유효하지 않은 케이스가 있어서 그 때의 에러 처리를 해주었다. try: URL = lines[i] options = webdriver.ChromeOptions() options.add_argument('headless') # 새 창 띄우지 않음 driver = webdriver.Chrome(executable_path='chromedriver', options=options) driver.get(url=URL) target = driver.find_element(By.TA.. 더보기 error: bad character range ”-= at position 2 re모듈이랑 정규식 사용중에 나온 에러인데 특수문자 중 - 가 들어가서 나온 에러 같다. 근데 왜인지 모르겠다. 그럼 -는 못 쓰나? 더보기 파이썬 정규표현식 re 모듈 사용하여 특수문자 골라내기 정규식 자체는 나도 정확하게 알고 있진 않아서 매번 찾아가며 쓰고 있는데..... 일단 파이썬에서 정규식을 사용하려면 re 모듈을 사용해야 한다. compile import re p = re.compile('[“”=+,#/\?:^$.@*\"※~&%ㆍ!』\\‘|\(\)\[\]\`\'…》]') 특수문자인지 검증하기 위한 컴파일 객체를 p에 생성했다. match m = p.match("!@#") print(m) match 함수에 문자열을 입력하고 아까 특수문자 정규식과 매치시켜보면 매치가 될 때 match 객체를 돌려주고, 미스매치 시 None을 반환한다. 정규식을 좀 더 잘 짰다면 한큐에 해결할 수 있었을지 모르겠는데 일단 이거 하고 있을 시간이 많이 없어서 대충 되는대로 했었다! search, findal.. 더보기 파이썬 딕셔너리 key pop하기 del 삭제하기, for문 도는 중 삭제 불가능 에러 딕셔너리 자료형에서 key를 뽑아내고 싶을 때 dict = {} dict.pop(key, None) del dict[key] dict.pop() 을 사용해서 key를 빼낼 수 있다. 2번째 인자에 None을 넣어주면 key가 혹시 존재하지 않아도 error가 발생하지 않는다. 하지만 del을 사용할 경우 dict에 key가 없는 에러가 발생한다면 에러를 뱉고 프로그램이 멈추게 된다. 딕셔너리를 for문으로 돌면서 그 중 특정 key를 삭제하려고 하게 되면 dictionary changed size during iteration 이라는 에러를 보게 된다. 작업 중에 dict가 수정되었다..고 멈추게 된다. filter_dict = {} for k, v in meaningful_dict.items(): if.. 더보기 파이썬 딕셔너리 Dictionary의 Key 혹은 Value로 정렬하기 딕셔너리는 순서가 없는 자료형이라 자체 정렬할 수 없다. dictionary를 dict.items()를 이용해 키와 값의 쌍인 튜플로 풀고 그 튜플을 정렬하면 리스트를 반환받을 수 있다. dict = {'b': 1, 'a': 4} sorted_dict = sorted(dict.items()) print(sorted_dict) [('a', 4), ('b', 1)] 기본적으로 오름차순 정렬이 된다. 내림차순 정렬을 하려면 sorted() 함수의 옵션에 reverse=True를 주면 된다. sorted_dict = sorted(dict.items(), key = lambda item: item[0], reverse=True) 이 때 람다는, 키와 밸류 중 어떤 것을 기준으로 내림차순 정렬할 지 정하기 위해 사.. 더보기 파일 쓰기시 UnicodeEncodeError: 'cp949' codec can't encode character 오류 해결 txt 파일을 생성하여 쓰려고 할 때 UnicodeEncodeError: 'cp949' codec can't encode character 오류가 발생했다. f = open(filename, 'w', encoding='utf-8') 파일 열기 옵션에 encoding을 utf-8로 주었더니 해결되었다. 더보기 파이썬 파일 읽기, 생성/쓰기 파일 관련 함수 파일 열기 파이썬에서 파일을 열거나 생성할 때 사용하는 함수는 open() 기본 내장함수이다. f = open(filename, mode='r') mode의 옵션으로 파일을 어떻게 사용할 지 설정한다. 기본적으로 파일이 없다면 새로 생성된다. r : 기본값, 읽기 w : 쓰기, 파일을 덮어쓸 때 기존 내용이 삭제됨. a : 쓰기, 파일을 덮어쓸 때 기존 내용에 이어서 추가됨. x : 쓰기, 파일이 없으면 에러가 발생함 b : 바이너리 모드로 파일이 열림 t : 기본값, 텍스트 모드로 파일이 열림 파일 내용 읽기 f.read(n) # n개의 문자를 읽어온다. 인자가 없다면 모든 문자를 읽어온다 f.readline() # 한 줄의 문자를 읽어온다. '\n' 개행 기준 f.readlines() # 개행 포함 .. 더보기 [CentOS 7] wget 버전 업그레이드 wget 취약점 (CVE_2016-4971) 이 있다는 소식에 내 wget 버전을 확인해보았고 1.14이길래 최신버전으로 업그레이드를 하기로했다. yum groupinstall "Development Tools" -y yum install gcc glibc glibc-common gd gd-devel openssl -y yum install glibc-devel glibc-headers kernel-headers kernel-devel gnutls-devel -y cd /opt wget https://ftp.gnu.org/gnu/wget/wget-1.20.3.tar.gz tar -xzf wget-1.20.3.tar.gz cd wget-1.20.3/ ./configure make && make instal.. 더보기 이전 1 ··· 3 4 5 6 7 8 9 ··· 15 다음