인프런 커뮤니티 질문&답변

David Ko님의 프로필 이미지
David Ko

작성한 질문수

[2024 리뉴얼] 처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지]

-------------------------------------------------------------------

안녕하세요 best-list 관련문의드립니다.

작성

·

180

0

9분44초부분에서 상품정보 크롤링 하는부분에서
잘모르는 부분이 있어서 문의드립니다
g마켓 best all 소스상에서 div best-list 두개(?) 가 있는데요
선생님 영상에서는 best-list 가 3개가 있다고 말해주셨는데 ....
제가 찾기에는 best-list가 두개네요
best-list[0]번째에 정보가 있고 best-list[1] 에는 정보가 없는것같은데요
best-list[0]으로 하고 for 문 돌리면 정보가 없고
best-list[1]으로 하면 크롤링이 됐니다.
이부분 문의드립니다.
 
 
 
 
 
 
 
- 본의응영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다)
- 이외의 문의등은 평생강의이므로 양해를 부탁드립니다
- 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

답변 2

0

David Ko님의 프로필 이미지
David Ko
질문자

아 죄송합니다  

best-list 가 3개가 있었는데 첫번째 걸 못찾았었습니다

선생님께서 꼼꼼히 잘 설명해 주셔서 정말감사합니다.

0

안녕하세요.

우선, 웹사이트가 수시로 변경되는 부분은 있는데요. 그래서, 제가 이번에도 웹사이트가 또 변경되었나보구나 해서, 코드를 다시 찾아서 테스트도 해보고, 해당 사이트도 봤습니다. 그런데 best-list class 를 가진 태그가 3개로 확인이 되더라고요. 다음 소스에서 한번 best-list 로 검색해보시면 3개를 확인하실 수 있을 것 같아서요.

view-source:http://corners.gmarket.co.kr/Bestsellers

또한, 관련 코드에서 best_item[1] 로 제공해드린 코드파일에도 작성이 되어 있고, 테스트해본 결과, 정상 동작하더라고요.

def get_items(html, category_name, sub_category_name):

    items_result_list = list()

    best_item = html.select('div.best-list')

    for index, item in enumerate(best_item[1].select('li')):

 

그래서, 제가 드린 자료를 확인해보시는 것이 어떠실까요? 혹시 예전 자료를 다운받으신 것이라서, 그런것인지도 몰라서 mysql_advance_with_pymysql_20211220.zip 파일로  [실전] 크롤링과 데이터베이스 - 스키마 설계해보기 챕터에 넣어드렸거든요. 해당 파일로 한번 확인부탁드려도 될까요?

 

혹시, mysql_advance_with_pymysql 로 시작하는 파일이 아니라, 또다른 파일이라면, 제가 놓쳤을 수도 있어서, 그렇다면 한번 죄송하지만, 해당 파일명을 알려주시면 감사하겠습니다. 추가로 웹사이트 변경으로 인한 부분은 자료에 업데이트날짜와 함께 표기를 하여 새로 업데이트하였고, 영상 자체는 계속 바꿀 수가 없어서, 자료부분과 함께 봐주시면 감사하겠습니다.

감사합니다

 

David Ko님의 프로필 이미지
David Ko

작성한 질문수

질문하기