파이썬으로 크롤링 질문드립니다.


어떤 블로그에 있는 스크래핑하는것을 연습하고 있습니다. import requests from bs4 import BeautifulSoup a= requests.get("http://blog.naver.com/PostList.nhn blogId=livehomeshop&categoryNo=40&from=postList") c=a.content soup=BeautifulSoup(c,"html.parser") all1 = soup.find("div",{"id":"postViewArea"})

여기까지 시행을 해서 나온게 아래와 같은 내용인데 신세계쇼핑 남성 프로스펙스 웜테크 트랙수트 4종 11월 9일 10:32 ~ 11:32 gs홈쇼핑 남여공용) 푸마 오리지널 라이트웜 벤치코트 11월 9일 20:40 ~ 21:40

이런식으로 홈쇼핑채널 // 아이템명 // 시간으로 구분되는데 어떤 태그로 필터를 해야 이와같이 크롤링 할수있는지 모르겠습니다...

독학하는데 너무 어렵네요 ㅠㅠ


[위에 코드로 했을 때 아래와 같은 소스가 나왔습니다...)

"라이브홈쇼핑"앱에서 홈쇼핑 방송일정을 더 편리하게 확인하고 추가할인 받으세요! 2017년 11월 8일남성패션 홈쇼핑 인기차트 1위 <!-- Not Allowed Attribute Filtered ( l-site_id="590003") --> 신세계쇼핑 남성 프로스펙스 웜테크 트랙수트 4종 11월 9일 10:32 ~ 11:32 108,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="590003") -->더보기>> 2위 <!-- Not Allowed Attribute Filtered ( l-site_id="535775") --> gs홈쇼핑 남여공용) 푸마 오리지널 라이트웜 벤치코트 11월 9일 20:40 ~ 21:40 158,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535775") -->더보기>> 3위 <!-- Not Allowed Attribute Filtered ( l-site_id="535774") --> cj홈쇼핑(cj오쇼핑) 리복클래식 17WINTER 신클라우드 롱패딩 벤치코트 남녀공용 11월 12일 20:30 ~ 21:40 168,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535774") -->더보기>> 4위 <!-- Not Allowed Attribute Filtered ( l-site_id="535775") --> gs홈쇼핑 [PUMA] 푸마 남성용 오리지널 패딩트랙수트 2종 11월 8일 17:40 ~ 18:40 118,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535775") -->더보기>> 5위 <!-- Not Allowed Attribute Filtered ( l-site_id="535774") --> cj홈쇼핑(cj오쇼핑) 17FW 케이스위스 HEAT FLEX-Moving수트 4종 남성 11월 8일 19:35 ~ 20:45 148,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535774") --><a class="conlink" href="http://api.livehomeshopping.com/common/forward_app.php" target="blank">더보기>> 6위 <!-- Not Allowed Attribute Filtered ( l-site_id="590003") --> 신세계쇼핑 2017년 남성 EXR 패딩트랙수트 4종세트 11월 8일 23:37 ~ 00:37 138,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="590003") --><a class="con_link" href="http://api.livehomeshopping.com/common/forwardapp.php" target="blank">더보기>> 7위 <!-- Not Allowed Attribute Filtered ( l-site_id="535775") --> gs홈쇼핑 GS홈쇼핑 단독 독일 정품 리미티드 에디션 한정판 물량 확보[ADIDAS GOLF] 아디다스 골프 퍼펙트웜 벤치코트 (공용) 11월 11일 19:30 ~ 21:30 199,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535775") -->더보기>> 8위 <!-- Not Allowed Attribute Filtered ( l-site_id="535778") --> 홈앤쇼핑 [몽펠리에] 남성 윈터 울 본딩 팬츠 3종 (With 연정훈) 11월 11일 06:05 ~ 06:45 49,500원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535778") -->더보기>> 9위 <!-- Not Allowed Attribute Filtered ( l-site_id="535776") --> 현대홈쇼핑 아리스토우 남성 보아퍼 구스다운트렉수트+보아퍼 후드트렉수트 총 4종 11월 10일 20:40 ~ 22:40 99,900원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535776") -->더보기>> 10위 <!-- Not Allowed Attribute Filtered ( l-site_id="535774") --><img alt="" class="_photoImage" id="MjAxNzExMDhfMTcw/MDAxNTEwMTI2MjMwNzIy.UO2O9PndCl9RTbnClkMXvleXRzDzs3RmbqktoqLUaB8g.L5SrNXhIwHRs57VxdfXh_q7rvzNBQPTkpQjidCe4H0g.JPEG.livehomeshop/34775835.jpg" onclick="popview(this, '90000003_00000000000000337CB341E7')" onload="setTimeout('utility.resizeImageWithId(\'MjAxNzExMDhfMTcw/MDAxNTEwMTI2MjMwNzIy.UO2O9PndCl9RTbnClkMXvleXRzDzs3RmbqktoqLUaB8g.L_5SrNXhIwHRs57VxdfXh_q7rvzNBQPTkpQjidCe4H0g.JPEG.livehomeshop/34775835.jpg\')',200)" src="http://postfiles5.naver.net/MjAxNzExMDhfMTcw/MDAxNTEwMTI2MjMwNzIy.UO2O9PndCl9RTbnClkMXvleXRzDzs3RmbqktoqLUaB8g.L5SrNXhIwHRs57VxdfXh_q7rvzNBQPTkpQjidCe4H0g.JPEG.livehomeshop/34775835.jpg?type=w2" style="cursor: pointer;"/> cj홈쇼핑(cj오쇼핑) 17FW 팜스프링스 남성 웜 기모 니트 자켓세트 4종 11월 9일 13:30 ~ 14:30 62,200원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535774") -->더보기>> 11위 <!-- Not Allowed Attribute Filtered ( l-site_id="535774") --><img alt="" class="photoImage" id="MjAxNzExMDhfMTU0/MDAxNTEwMTI2MjMxMDc1.gntmoHHrrVkoEv7WrP_ThNH8VfGiAx0u3wktP9d6APEg.rBzmq-qa2tusOMM0RRWzIeYZ2cxaAUgUCvUgxIECYx8g.JPEG.livehomeshop/34983383.jpg" onclick="popview(this, '90000003_00000000000000337CB341E7')" onload="setTimeout('utility.resizeImageWithId(\'MjAxNzExMDhfMTU0/MDAxNTEwMTI2MjMxMDc1.gntmoHHrrVkoEv7WrPThNH8VfGiAx0u3wktP9d6APEg.rBzmq-qa2tusOMM0RRWzIeYZ2cxaAUgUCvUgxIECYx8g.JPEG.livehomeshop/34983383.jpg\')',200)" src="http://postfiles3.naver.net/MjAxNzExMDhfMTU0/MDAxNTEwMTI2MjMxMDc1.gntmoHHrrVkoEv7WrPThNH8VfGiAx0u3wktP9d6APEg.rBzmq-qa2tusOMM0RRWzIeYZ2cxaAUgUCvUgxIECYx8g.JPEG.livehomeshop/34983383.jpg?type=w2" style="cursor: pointer;"/> cj홈쇼핑(cj오쇼핑) 아디다스 골프 남성 [퍼텍스 쉴드+] 구스다운 롱패딩 11월 12일 11:10 ~ 12:30 297,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535774") -->더보기>> 12위 <!-- Not Allowed Attribute Filtered ( l-siteid="535778") --><img alt="" class="photoImage" id="MjAxNzExMDhfMjgg/MDAxNTEwMTI2MjMxNDY5.T2X_rNt672dZQhpkrbCQ9LGjeJfdszIMYnGGFWK1gNsg.Oqf863taNRZmdUcNlxtRmC4Xo2IA_CMi0nTSyVp1QSgg.JPEG.livehomeshop/34851843.jpg" onclick="popview(this, '90000003_00000000000000337CB341E7')" onload="setTimeout('utility.resizeImageWithId(\'MjAxNzExMDhfMjgg/MDAxNTEwMTI2MjMxNDY5.T2X_rNt672dZQhpkrbCQ9LGjeJfdszIMYnGGFWK1gNsg.Oqf863taNRZmdUcNlxtRmC4Xo2IA_CMi0nTSyVp1QSgg.JPEG.livehomeshop/34851843.jpg\')',200)" src="http://postfiles8.naver.net/MjAxNzExMDhfMjgg/MDAxNTEwMTI2MjMxNDY5.T2X_rNt672dZQhpkrbCQ9LGjeJfdszIMYnGGFWK1gNsg.Oqf863taNRZmdUcNlxtRmC4Xo2IA_CMi0nTSyVp1QSgg.JPEG.livehomeshop/34851843.jpg?type=w2" style="cursor: pointer;"/> 홈앤쇼핑 [뱅뱅]17FW 웜+ 기모 면팬츠 3종(남성) 11월 10일 04:50 ~ 05:30 71,910원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535778") -->더보기>> 13위 <!-- Not Allowed Attribute Filtered ( l-site_id="590003") --> 신세계쇼핑 NH10%할인미넴옴므 무봉제 다운 코트 11월 8일 20:35 ~ 21:36 88,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="590003") -->더보기>> 14위 <!-- Not Allowed Attribute Filtered ( l-site_id="535779") --> GS마이샵 [뱅뱅]플리스 본딩 데님 3종(남) 11월 9일 14:06 ~ 14:26 79,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535779") -->더보기>> 15위 <!-- Not Allowed Attribute Filtered ( l-site_id="535773") --><img alt="" class="photoImage" id="MjAxNzExMDhfMjAy/MDAxNTEwMTI2MjMyNzQ3.z-2nEyt9jScDKNnTJHXPf715cOhx3Y2H5Z_SDWEbHLMg._uqMr5X9vaRZ5s7nU4ztS08NDE74Gbw0OqqJ7y3_UaAg.JPEG.livehomeshop/34682940.jpg" onclick="popview(this, '9000000300000000000000337CB341E7')" onload="setTimeout('utility.resizeImageWithId(\'MjAxNzExMDhfMjAy/MDAxNTEwMTI2MjMyNzQ3.z-2nEyt9jScDKNnTJHXPf715cOhx3Y2H5ZSDWEbHLMg.uqMr5X9vaRZ5s7nU4ztS08NDE74Gbw0OqqJ7y3_UaAg.JPEG.livehomeshop/34682940.jpg\')',200)" src="http://postfiles9.naver.net/MjAxNzExMDhfMjAy/MDAxNTEwMTI2MjMyNzQ3.z-2nEyt9jScDKNnTJHXPf715cOhx3Y2H5Z_SDWEbHLMg._uqMr5X9vaRZ5s7nU4ztS08NDE74Gbw0OqqJ7y3_UaAg.JPEG.livehomeshop/34682940.jpg?type=w2" style="cursor: pointer;"/> 롯데홈쇼핑 [체스터by체스터베리] LONDON GREAT 울스트레치 밴딩 매직팬츠 3pcs 11월 8일 18:40 ~ 19:40 98,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535773") --><a class="conlink" href="http://api.livehomeshopping.com/common/forward_app.php" target="blank">더보기>> 16위 <!-- Not Allowed Attribute Filtered ( l-site_id="535774") --> cj홈쇼핑(cj오쇼핑) [AM]17FW 앤드류마크 발타자 4WAY스트레치 구스다운 남 11월 10일 19:35 ~ 20:40 218,000원 <!-- Not Allowed Attribute Filtered ( taget="_blank" l-site_id="535774") --><a class="con_link" href="http://api.livehomeshopping.com/common/forwardapp.php" target="blank">더보기>> 17위 <!-- Not Allowed Attribute Filtered ( l-site_id="535773") --><img alt="" class="photoImage" id="MjAxNzExMDhfMjA1/MDAxNTEwMTI2MjMzMzEw.ZCxLxOKHrklCQhag3IqlSVDvQkdRDAkwyDBrLuVdYSEg._joNjuJFtDNCCK0aqlojj4F1LrCDnfEBNdSBnX14fMog.JPEG.livehomeshop/34820397.jpg" onclick="popview(this, '9000000300000000000000337CB341E7')" onload="setTimeout('utility.resizeImageWithId(\'MjAxNzExMDhfMjA1/MDAxNTEwMTI2MjMzMzEw.ZCxLxOKHrklCQhag3IqlSVDvQkdRDAkwyDBrLuVdYSEg.joNjuJFtDNCCK0aqlojj4F1LrCDnfEBNdSBnX14fMog.JPEG.livehomeshop/34820397.jpg\')',200)" src="http://postfiles13.naver.net/MjAxNzExMDhfMjA1/MDAxNTEwMTI2MjMzMzEw.ZCxLxOKHrklCQhag3IqlSVDvQkdRDAkwyDBrLuVdYSEg._joNjuJFtDNCCK0aqlojj4F1LrCDnfEBNdSBnX14fMog.JPEG.livehomeshop/34820397.jpg?type=w2" style="cursor: pointer;"/> 롯데홈쇼핑 [백티][백티][남성] 17 F/W 울 블렌디드 방풍점퍼 + 코튼기모터틀 2종 11월 8일 16:40 ~ 17:40 99,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535773") -->더보기>> 18위 <!-- Not Allowed Attribute Filtered ( l-site_id="535778") --> 홈앤쇼핑 [LIFLY] 라이플리 소프트 리얼 니트 4종 (남) 11월 9일 08:10 ~ 08:50 69,930원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535778") -->더보기>> 19위 <!-- Not Allowed Attribute Filtered ( l-site_id="535774") --> cj홈쇼핑(cj오쇼핑) 펠틱스 로피LOPE 남성 17FW 기능성 맥시 롱 벤치코트 11월 11일 17:40 ~ 18:40 98,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535774") -->더보기>> 20위 <!-- Not Allowed Attribute Filtered ( l-site_id="535773") --><img alt="" class="photoImage" id="MjAxNzExMDhfOTYg/MDAxNTEwMTI2MjM0MjA3.1kn1-7bS6gUvuhly8oe5h63Lh6m-At1Q2tlquWufWFsg.rIpKUybVELYS81q_LkTCZiLvSPMSF40gQRmr0zgWnBUg.JPEG.livehomeshop/35001167.jpg" onclick="popview(this, '9000000300000000000000337CB341E7')" onload="setTimeout('utility.resizeImageWithId(\'MjAxNzExMDhfOTYg/MDAxNTEwMTI2MjM0MjA3.1kn1-7bS6gUvuhly8oe5h63Lh6m-At1Q2tlquWufWFsg.rIpKUybVELYS81qLkTCZiLvSPMSF40gQRmr0zgWnBUg.JPEG.livehomeshop/35001167.jpg\')',200)" src="http://postfiles16.naver.net/MjAxNzExMDhfOTYg/MDAxNTEwMTI2MjM0MjA3.1kn1-7bS6gUvuhly8oe5h63Lh6m-At1Q2tlquWufWFsg.rIpKUybVELYS81q_LkTCZiLvSPMSF40gQRmr0zgWnBUg.JPEG.livehomeshop/35001167.jpg?type=w2" style="cursor: pointer;"/> 롯데홈쇼핑 [FILA][남성] 17 F/W 옵티마웜 기모 골프티셔츠 3종 11월 12일 20:25 ~ 21:30 128,000원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535773") -->더보기>> 21위 <!-- Not Allowed Attribute Filtered ( l-site_id="535778") --> 홈앤쇼핑 [뱅뱅]17FW 기모데님팬츠 3종(남성) 11월 10일 09:30 ~ 10:10 79,200원 <!-- Not Allowed Attribute Filtered ( taget="blank" l-site_id="535778") -->더보기>> 두 손은 무겁게, 지갑은 가볍게! 홈쇼핑의 지혜 "라이브홈쇼핑" <a class="con_link" href="http://api.livehomeshopping.com/common/forwardapp.php?utm_source=Blog&utm_medium=BTM&utm_campaign=gs20161219" target="blank"><img alt="" class="_photoImage" id="livehomeshopping/images/blog/blog_btm_109.jpg" onclick="popview(this, '90000003_00000000000000337CB341E7')" onload="setTimeout('utility.resizeImageWithId(\'livehomeshopping/images/blog/blogbtm_109.jpg\')',200)" src="http://restapi.fs.ncloud.com/livehomeshopping/images/blog/blog_btm_109.jpg" style="cursor: pointer;"/>

  • 2017년 11월 08일에 작성됨

조회수 82


1 답변


대부분의 Crawling을 도와주는 도구의 처음은 지정된 URL에 가서 request요청을 하고 그 응답으로서 response를 받아옵니다.

그리고 그 다음으로 response.body 부분에 해당하는, HTML 문서를 Parsing 해야 합니다. HTML을 파싱하는 방법에는 CSS Selector의 방식으로 파싱하는 방법이 있고, XMLPath라는 방식으로 파싱하는 방법이 있습니다.

저는 개인적으로, CSS Selector방식으로 파싱하는 방법을 사용하는 것을 추천드립니다. (왜냐하면, 나중에 웹에서 CSS작업을 할 때도 똑같은 방식을 사용하기 때문입니다...)

제가 BeautifulSoup를 사용해보지 않아서 구체적으로 예시를 들 수는 없지만, 아마도 다음의 주소가 질문자께서 바라시는 답안에 가장 가까워 보입니다.

https://www.crummy.com/software/BeautifulSoup/bs4/doc/#css-selectors

  • 2017년 11월 16일에 작성됨
    인공생명(Aritificial Life)와 인공지능에 관심이 많은 학생입니다. 주로 Python을 애용 합니다.

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close