2024. 4. 3. 16:30ㆍ프로젝트/빵맛집 추천서비스 웹배포
01 문제 해결 과정
1. [전처리] "솔트24", "솔트24", "솔트 24" 통일 시키기
- 성대점, 혜화본점, 북촌점은 네이버지도 참고
2. [전처리] 중복 되는 '솔트24'는 리뷰 데이터 수를 갱신 시키고 삭제
3. [전처리] "서울특별시"로 시작하지 않는 데이터 정리
4. [전처리] 주소가 전치 되어있는 경우 직접 변경
5. [전처리] 본점 위치 띄어쓰기 맞춰주기
6. [전처리] 리뷰 데이터에 개행문자(\n) 삭제하기
7. [크롤링] 작성자, 작성일자, 리뷰 수집 해보기
02 중복 데이터 삭제, 명칭 통일
03 리스트안에 텍스트를 1.복제, 2.적재하고 싶을 때
04 데이터 전처리 인사이트
# 부정 연산자 + 논리 연산자(비트단위)
info = info.loc[~con2|~con3]
# 인덱스 2의 'Age' 컬럼 값을 35로 즉시 변경
df.loc[2, 'Age'] = 35
# 인덱스 2에 해당하는 행의 모든 값을 즉시 변경
df.loc[2] = ['Sam', 30, 'Tokyo']
# 'adress'컬럼에서 '서울특별시'로 시작하지 않는 컬럼을 다보여주는 코드
info[~info['address'].str.startswith('서울특별시')]
# 반대는? 유용하다.
info[~info['address'].str.endswith('서울특별시')]
# Selenium 4에서는 이외에도 "find_element" 메서드를 사용하여 단일 요소를 찾을 수 있다. 이 메서드는 조건과 일치하는 첫 번째 요소를 반환한다. 만약 요소를 찾지 못하면 NoSuchElementException 예외를 발생시킨다. elements는 비어있더라도 수집은 하기에 오류를 발생시키기 않는다.
# "driver.page_source"는 현재 브라우저에 로드된 페이지의 HTML 소스 코드 전체를 문자열로 반환합니다. 이 문자열을 활용하여 페이지의 구조를 분석하거나, BeautifulSoup 같은 파싱 라이브러리를 사용하여 특정 데이터를 추출할 수 있습니다.
# "page_source"는 페이지가 완전히 로드된 후에 해당 페이지의 현재 상태를 반영합니다. 따라서, 동적으로 콘텐츠가 변경되는 웹 페이지의 경우, page_source를 통해 얻은 HTML 코드는 스크립트 실행 전의 "초기" 상태를 반영할 수도 있습니다. 동적인 콘텐츠를 처리하기 위해서는 Selenium의 기다림(wait) 기능을 사용하여 필요한 요소들이 로드되고 나타날 때까지 기다린 후에 page_source를 사용하는 것이 좋습니다.
05 최종 프로젝트 회의
# 최종 프로젝트 컬럼명과 순서
Store - Address - Review_score - Review_counts - ID - Date - Review_text
# konlpy, 자연어 처리 라이브러리, 한국어에 특화해서 만든 것, 분석할 때 유용할 듯.
기초 : https://www.youtube.com/watch?v=SZRXHYOFtts
응용 : https://www.youtube.com/watch?v=H0amMe-Ezzs
# https://cloud.google.com/natural-language#demo
이거는 konlpy 찾기 전에 확인한건데 API로 파일 보내서 긍/부정 지수(-1~1) 바로 확인할 수 있다.
링크 걸어놓은건 데모 페이지인데 여기서 테스트해볼 수 있다.
실제로 분석할 때는 비용 발생하는데 처음에는 무료 크레딧 준다. (gcp크레딧인 듯)
# Google Cloud에서 바로 긍/부정 분석해도 된다고 한다. 아니면 저기서 긍/부정 분석 한 결과값을 label 컬럼에 넣은 데이터셋을 가지고서 Gemma로 분석해도 되고?
'프로젝트 > 빵맛집 추천서비스 웹배포' 카테고리의 다른 글
04.05 크롤링 '자세히' 클릭 코드 추가 및 기타 진행 사항 (0) | 2024.04.05 |
---|---|
04.04 크롤링 문제 해결 과정 (0) | 2024.04.04 |
04.02 전처리 문제 해결 과정 (0) | 2024.04.02 |
04.01 크롤링 문제 해결 과정 - 1차 수집 완료 (0) | 2024.04.02 |
03.31 일요일 크롤링 문제 해결 과정 (0) | 2024.03.31 |