본문 바로가기

분류 전체보기196

파이썬 크롤러) MAC에서 MySQL과 python3 연동하기 (pip로 MySQL 패키지 설치) 엄청나게 삽질하고(MySQL사이트 들어가서 라이브러리 다운 받고 난리) 알아낸 명령어:pip install mysql-connector-python My-iMac:Downloads MyMy$ pip install mysql-connector-pythonCollecting mysql-connector-python Downloading https://files.pythonhosted.org/packages/90/3c/40067fa3fc43a7273ab7839444b802ea3bdb69b35523843c8d9ea337ff65/mysql_connector_python-8.0.13-cp37-cp37m-macosx_10_13_x86_64.whl (3.5MB) 100% |█████████████████████████.. 2018. 12. 28.
파이썬 크롤러) pandas로 데이터를 엑셀로 저장할 때 추가 데이터를 이어 업데이트하기 ! 파일을 한 번 저장하고, 그 파일 위에 추가적으로 다른 데이터를 또 이어서 저장하는 경우, import pandas as pd #names 리스트와 links 리스트는 각각 요소를 포함하는 리스트로 정의되어 있음을 전제로 함 data={"names":name, "links":link} db=pd.DataFrame(data, columns=["names", "links"]) db.to_csv('DB.csv', mode='a', header=False, index=True) mode='a'를 쓰면 이어쓰기 가능하다. names 리스트와 links 리스트가 업데이트 되어 DB.csv파일을 업데이트 하는 경우, 저장할 때 header와 index를 정의해주지 않으면 데이터만 업데이트 되는게 아니라 header와.. 2018. 12. 20.
파이썬 크롤러) 파이썬 코딩을 위해 pip로 pandas 등 모듈을 깔 때 주의점 ! 왜 자꾸 invalid syntaxError가 뜰까!라고 하는 분이 있다면... 나와 같은 파이썬 초보일 가능성이 :-)..... pip로 모듈 설치 시 자꾸 까먹는 나의 실수는,파이썬을 켜놓고 pip3 install 모듈이름을 친다는 것이다 ! 파이썬에서 신나게 코딩 연습을 하고 있다가새로운 모듈을 import해야 한다면,반드시 exit()으로 나와서 pip3 install pandas 를 쳐주세요 ~ (pip버전이 3.0이전 버전이면 pip만 쳐도 됨)그리고 관리자실행권한이 필요할 경우에는 맨 앞에 sudo를 붙여서sudo pip3 install pandas라고 쳐주세요 ~!! SyntaxError: invalid syntax >>> sudo pip3 install pandas File "", lin.. 2018. 12. 17.
파이썬 크롤러) string 문자열 편집하기 (양 옆 자르기, 특정 문자 변경하기) 제품명들을 string으로 묶고나서필요 없는 텍스트들을 삭제하고 부호들을 다른 것으로 교체해 보았다. prd_names=str(soup.find_all('td', class_='ProdName'))prd_names=prd_names[1:-1] #string 양 옆으로 수정prd_names=prd_names.replace('&', '&') #'&'로 적힌 부분을 '&'으로 변경prd_names=prd_names.replace(', ', ',') #쉼표 뒤의 공백을 없애려고 ', '를 ','로 변경 prd_names[1:-1]의 의미는 앞에서 두번째 글자부터 뒤에서 두번째 글자까지만 나타낸다는 뜻.예를 들어 prd_names="삥안녕하세요뿡" 일 경우 맨 앞과 맨 뒤의 삥과 뿡을 뺄 수 있음. replace.. 2018. 12. 13.
파이썬 크롤러) 데이터 파싱 후 쓸데없는 태그 지우기 (re.sub, 태그 제거) Beautiful Soup을 통해 html.parser로 파싱한 값들을 얻었다 ! soup=BeautifulSoup(html, 'html.parser') prd_names=soup.find_all('td', class_='ProdName') td class가 ProdName으로 된 제품명들을 모두 찾아내기 위한 코드이다. 그 결과 여러 제품명들이 하기와 같이 파싱되었다. KIEHL'S Midnight Recovery Oil, KIEHL'S midnight recovery concentrate.... 문제는, 내가 필요한 건 제품명들이었는데 속성 태그들까지 같이 딸려서 긁혔다. 이를 위해 태그를 제거하면 된다고 하여 방법을 찾아보았다. prd_names=str(soup.find_all('td', class.. 2018. 12. 13.