💡

9차 회의(오후4시)

날짜
Jun 22, 2023
태그
회의

1. 기본편 CH2 MySQL

  • ‘python과 MySQL 연동 방법’ 2.3에 작성
  • 들어가야 할 내용
    • mysql에 연결 후 DB 생성 DB에 연결 후 테이블 생성 삽입/수정/삭제 조회 with문 설명 추가 필요 (참고: with 구문을 사용하면 with 종료 시점에 close를 알아서 실행해주기 때문에 close를 따로 실행할 필요가 없습니다.)

2. 활용편 진행 사항 점검

01. KOTRA


  • 크롤링 코드 + MySQL 적재 코드 완료
 
🛠 FEEDBACK
  • 1.1~1.3 글머리 기호 → 줄 글로 변경
  • 1.3 해당 페이지에 대한 크롤링 가능 여부 설명만 넣기
  • 1.4 각 요소들을 가져오려고 하는 이유 설명 추가
  • 1.4 사이트 캡쳐본(페이지+개발자도구) 넣기
  • 1.5.2 상세 조건 걸어서 크롤링하는 방향으로 수정
  • 1.6 pymysql로 변경
 

02. 번개장터


  • 크롤링 코드 + MySQL 적재 코드 완료
 

03. 공공데이터포털 API


  • 크롤링 코드 + MySQL 적재 코드 일부 완료
 
🛠 FEEDBACK
  • JSON 및 XML 데이터 추가 서칭
 

3. 코드 컨벤션

  1. 라이브러리 임포트 전용 코드 블록 맨 상단에 생성
from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.common.keys import Keys import time from datetime import datetime, timedelta
  1. 변수명 스네이크 표기법으로 작성
item_name = input('검색하고자 하는 상품명을 입력하세요: ')
  1. selenium click()부분 밑으로 빼기
newest = driver.find_element(By.XPATH, '//*[@id="root"]/div/div/div[4]/div/div[3]/div/div[2]/a[2]') newest.click()
  1. 크롤링한 데이터 → 데이터프레임 변환 → 전처리 진행 → DB 적재
  1. 크롤링 후 바로 데이터프레임으로 변환 (리스트에 이중 저장X)
  1. 데이터 전처리 부분 반드시 작성하기
  1. pymysql 라이브러리로 통일
import pymysql # 데이터베이스 생성 conn = pymysql.connect(host = '127.0.0.1', port = 3306, user = 'root', password = 'qr7991rq!', charset='utf8')
  1. SQL 명령문 별 코드 블록 나누기
# 테이블 생성 쿼리 sql = '''create table market_product ( pid varchar(10) primary key, title varchar(50), price int, upload_time varchar(10), place varchar(30), inspection int, delivery_fee int, pay int, ad int, href varchar(150), volume varchar(10));''' with conn.cursor() as cur: cur.execute(sql) conn.commit()
 
과제 1. 활용편 코드 코드 컨벤션에 맞게 수정하기 2. 활용편 각 파트별 Notion 집필하기 → 집필하면서 이슈사항 있으면 [활용편 - 이슈] 페이지에 작성하고, 라운지에 알리기