다른사이트 크롤링 질문드려요
371
작성한 질문수 4
아까 올린 질문은 파싱을 lxml로 해야만 가능하네요.
저는 계속 html.parser로 파싱했더니 [] 가 출력되더라고요.
*그이유는 무엇일까요?
추가로
https://www.amorepacificmall.com/kr/ko/product/detail?onlineProdSn=20480&onlineProdCode=110770000064
이 페이지의 리뷰 부분을 크롤링하고 싶은데 크롤링 영역
class_="ellipsis line5"
넣으면 크롤링이 안되는데 혹시 크롤링하는 방법이 있을까요?
남박사님 도와주세요.
답변 2
1
아 그리고 html.parser 와 lxml 은 내부적으로 select 하는 방식이 달라서 때에 따라 사용하는 라이브러리에 맞게 코드를 수정해야하는 경우가 종종 있습니다. 참고하세요
1

위의 이미지를 보시면 알 수 있듯이 말씀하신 페이지의 리뷰 정보는 알려주신 주소 페이지의 내부에서 Ajax 통신을 하여 리뷰데이터를 따로 구해와서 출력하는 방식이라 해당 페이지만을 갖고는 리뷰데이터를 구할 수 없습니다.
강좌중에 아래의 강좌를 참고하시면 Ajax로 통신하는 사이트를 분석하고 크롤링하는 내용을 참고하실 수 있습니다.
따라서 위와 같은 페이지에서 리뷰 데이터를 추출하려면 제가 급작스럽게 작성 및 테스트한 아래 코드를 참고하셔서 분석해보시기 바랍니다. 핵심적인 내용을 파악하시라 최대한 간단하게 작성한 코드 입니다. 분석 방법은 위의 강좌 링크를 참고하시구요
import requests
# 리뷰는 상품페이지 내에서 Ajax로 리뷰페이지를 따로 로딩해서 출력
url = "https://www.amorepacificmall.com/kr/ko/product/getReviewList?prodReviewUnit=OnlineProd&prodReviewType=ExcludeExperience&onlineProdSn=20480&prodSn=&styleCode=&prodReviewSort=Recommend&scope=All&topReviewOnlyYn=N&topReviewFirstYn=N&startDate=&endDate=&imageOnlyYn=N&offset=0&limit=10&displayMenuSetId=&displayMenuId=&_=1574687443046"
# 해당 데이터는 Ajax를 통해 json 형태로 리턴됨
# 위의 url 주소를 꼭!! 직접 브라우저에서 접속해보세요.
# 크롬보다는 파이어폭스 브라우저가 기본적으로 json데이터를 pretty 스타일로 json 데이터를 보여주기 때문에 보기가 좋습니다.
datas = requests.get(url).json()
# 리턴된 json 데이터의 루트 요소는 prodReviewListInfo 이고
# 리뷰는 prodReviewListInfo 밑에 prodReviewList 에 존재함
reviews = datas["prodReviewListInfo"]["prodReviewList"]
# 반복문을 돌면서 원하는 데이터를 추출하면 됩니다.
for r in reviews:
sn = r["prodReviewSn"]
text = r["prodReviewBodyText"]
order_number = r["ordNo"]
prod_sn = r["prodSn"]
prod_name = r["prodName"]
print(prod_name)
38강 = 연산자 더하고 빼기
0
60
2
주석처리
0
117
1
함수의 파라미터값 msg
0
155
1
강의자료 이미지 안나옴
0
239
3
강의자료 질문 두번째
0
165
3
강의자료 관련 질문
0
116
1
파이썬 예외 처리 try / except 파일 처리 코드가 실행이 안됩니다.
0
235
1
소수 너무 어려워요
0
245
1
imagefont 함수 사용
0
239
1
pylint
0
357
1
add 함수 문의 ㅠㅠ
0
283
1
형식 문의드립니다.
0
210
1
변수 명을 왜 src, tar로 하셨는지 궁금합니다.
0
602
1
숫자야구 코드를 짜 봤는데 뭔가 이상합니다.
0
253
1
zsh: command not found: pylint
0
269
1
텔레그램 봇 만들기 코드 실행이 안됩니다 박사님..ㅠ
0
546
1
질문드립니다.
1
374
2
list.reverse() 출력에 대해서 질문있습니다.
1
433
1
데코레이터 함수 및 동작시간 질문입니다.~
1
323
2
opencv 사용하면서 궁금한점 (해상도)
1
781
1
질문드립니다.
1
299
1
아래 오류가 뜨면서 vscode가 컴파일이 되지 않는데.. 혹시 왜이럴까요?
1
445
1
크롤링안되는 현상 문의 드립니다.
1
422
1
파이썬 크롤링 관련 문의
1
278
1





