분류 전체보기349 (강원도) 장칼국수 / 초당순두부 맛집 ○양양 마루 장칼국수 (1) 맛 : ☆☆☆☆[맛있다. 근처오면 꼭 들릴 것 같음(별 4개부터 지인에게 추천)] (2) 친절도 및 서비스(사장 및 종업원 포함) : ☆☆☆☆(힘들텐데 친절하게 해줘서 고마워.) ※ 추운 12월 말에 가서그런지 뜨끈하고 매콤한 칼국수와 고소한 옹심이 그리고 오징어 순대까지 너무 맛있었음 ○최옥란할머니순두부 (1) 맛 : ☆☆☆☆[맛있다. 근처오면 꼭 들릴 것 같음(별 4개부터 지인에게 추천)] (2) 친절도 및 서비스(사장 및 종업원 포함) : ☆☆☆☆☆[가족같아. 너가 웃으니 나도 웃음이나요.(살짝은 부담돼요;;)] ※ 반찬까지 완벽한 식당 ※ 배만 안불렀으면 황태구이정식도 먹었을텐데 아쉬웠음 ※ 가격은 약간있지만 가격대비 맛은 최상이었다고 생각함 ※ 보통 순두부하면 초당마.. 2024. 1. 1. (경기도 고양시) 지축역 브런치 맛집 ○브런치빈 지축역점 (1) 맛 : ☆☆☆☆☆(강추 및 생각날것 같음) (2) 친절도 및 서비스(사장 및 종업원 포함) : ☆☆☆☆(힘들텐데 친절하게 해줘서 고마워.) ※ 가성비 끝판왕(세트로 시켜서 먹었는데 배도 많이부르고 맛있어서 행복한 포만감으로 다음 데이트할 수 있었음 ※ 재료 퀄리티도 좋고 매장내 분위기도 밝고 좋음 ※ 주차가능 2024. 1. 1. openpyxl을 활용한 데이터 크롤링 및 엑셀저장 ※ 해당 크롤링 사이트는 작성자가 수강료를 지불하고 '잔재미코딩 : 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (2023년까지 업데이트)' 강의에서 제공한 사이트임. ※ 수강하면서 별도 코딩하고 녹화하였음. TMI 지만 잔재미코딩 강의 강추합니다. □ 목적 : 상품명과 등록일에 대한 태그값을 활용하여 크롤링한 데이터를 openpyxl 라이브러로 엑셀로 저장 #관련함수 라이브러리 실행 import requests #크롤링관련 라이브러리 from bs4 import BeautifulSoup #크롤링관련 라이브러리 import openpyxl #엑셀관련 라이브러리 #★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ #1단계 : 함수정의★★★★★★★.. 2023. 12. 27. openpyxl : 엑셀파일 저장 □ 사용 라이브러리 : openpyxl pip install openpyxl □ 함수 ○ 엑셀 파일 생성 : openpyxl.Workbook() ○ 엑셀 시트 선택 : 엑셀파일명.activce ○ 시트 이름 변경 : 변수명.title = 시트명 ○ 엑셀파일 저장 .save('파일명'.xlsx) ○ *저장 후 닫기 : .close() ※ 꼭 엑셀 파일을 생성/열었다면 저장후 필히 닫아야함 #openpyxl 라이브러리 활용 import openpyxl #엑셀 파일 생성 : .Workbook() excel_data = openpyxl.Workbook() #엑셀 시트 선택 : .activce excel_data_sheet = excel_data.active #시트 이름 변경 : 변수명.title = 시트명 ex.. 2023. 12. 27. 반복문을 활용한 페이지별 크롤링 □ url 링크 패턴을 파악 후 If문과 for문을 활용하여 페이지별 해당하는 조건의 데이터를 추출 #관련 라이브러리 호출 import requests from bs4 import BeautifulSoup for page_num in range(10): if page_num == 0: #조건문을 활용하여 0이면 홈화면 출력 target_page = requests.get('https://davelee-fun.github.io/') print('홈화면 입니다') else: #0이 아니라면 그다음 페이지는 아래 링크로 이동하며 h4이며 클래스명이 card-text인 데이터를 추출 target_page = requests.get(f'https://davelee-fun.github.io/page{str(page.. 2023. 12. 21. 크롤링 예제 4 □ 예제 : 특정 페이지의 태그별 영역의 값을 가져와 원하는 형태로 출력하자 (작성자는 사이트의 요약정보를 출력해주는 것을 위해 태그별 크롤링한 데이터를 단순가공하여 출력함) #라이브러리 호출 import requests from bs4 import BeautifulSoup #크롤링 대상 웹사이트 지정 web = 'https://davelee-fun.github.io/' #정보 가져오기 requests.get() requests_info = requests.get(web) requests_info_parser = BeautifulSoup(requests_info.content, 'html.parser') print('\n####################블로그 기본정보###################.. 2023. 12. 20. css selector □ select() ○ select() 안에 태그 또는 CSS class 이름 등을 넣음 ○ 결과값은 리스트 형태로 반환 ○ 매칭되는 첫번째 데이터만 얻고자 할 때는 select_one(), 이 때는 해당 아이템의 객체가 리턴됨 ○ 하위태그 - '상위태그 하위태그' : 상위에서 하위태그에 있는 모든 값을 출력 - '상위태그>하위태그' : 상위기준 바로 하위에있는 태그 값 출력*반드시 상/하위로 구성된 태그일때만 사용가능 □ select_one() ○ 리스트형태가 아닌 단하나의 객체로 출력 ○ 조건에 맞는 값들이 다른 값들이 많아도 첫번째 값만 출력 *find()/select()로 가져온 객체에는 find()/select()함수를 중복하여 사용가능함 #라이브러리 추출 import requests from .. 2023. 12. 20. 크롤링 예제 3 □ 전처리 ○ .split(구분값) - 구분값을 중심으로 분리하여 리스트 형태로 저장 - 구분되어 저장된 값을 인덱스 번호를 활용하여 출력 ○ .strip() : 앞, 뒤 공백 제거 ○ .replace('변경대상 값', '변경할 값) : 특정 값을 원하는 값으로 변경 □ enumerate(변수명) ○ 반복문으로 출력시 출력 값에 번호를 붙이고 싶다면 enumerate 함수 활용 ○ 이때 번호로 출력할 변수를 추가하여 코딩해야함 #라이브러리 추출 import requests from bs4 import BeautifulSoup #크롤링 대상 사이트 지정 target_place = requests.get('https://davelee-fun.github.io/blog/crawl_test') #htmlpars.. 2023. 12. 19. 크롤링 예제 2 □ .find, .find_all() ○ .find() - 조건만족 태그를 단 한개만 가져옴 - 만약 조건을 만족하는 태그가 여러개라고하면 첫번째 것만 가져옴 ○ .find_all() - 조건만족 태그관련 여러개의 값, 즉, 복수개를 모두 가져옴 □ 태그별 css 속성등을 활용한 조건으로 데이터 추출 ○ 변수명 = 변수명.find('태그', class_ ='스타일') ○ 변수명 = 변수명.find('태그', '스타일') ○ 변수명 = 변수명.find('태그', attrs = {'align':'center'}) ○ 변수명 = 변수명.find(id='아이디명') □ .get_text(), .string ○ .get_text() - 문자열이 없을시 None 출력 ○ .string - 유니코드 형식의 텍스트까지.. 2023. 12. 19. 이전 1 ··· 20 21 22 23 24 25 26 ··· 39 다음