크롤링 연습
def get_text(tag_string):
return "tag_string의 내용 문자열을 리턴"
ex) <a href="abc.html">링크</a>
-> '링크'를 리턴
sample.html
<a href="/webtoon/list.nhn?titleId=710390&weekday=thu" onclick="clickcr(this,'thm*T.tit','','28',event)" class="title" title="비둘기가 물고 온 남자">비둘기가 물고 온 남자</a>
<a href="/webtoon/list.nhn?titleId=657948&weekday=thu" onclick="clickcr(this,'thm*T.tit','','27',event)" class="title" title="서북의 저승사자">서북의 저승사자</a>
<a href="/webtoon/list.nhn?titleId=693444&weekday=thu" onclick="clickcr(this,'thm*T.tit','','26',event)" class="title" title="Doll 체인지">Doll 체인지</a>
<span class="ico_cut">컷툰</span>
<h4 class="sat"><span>토요 웹툰</span></h4>
<p class="author2"><a href="#" onclick="clickcr(this,'mom.artist','710762','2',event); return artistAction.viewArtist('710762', this);" title="마인드C / 김명현">마인드C/김명현</a></p>
<p>어중간하게 태어난 반쪽짜리 능력자들의 블록버스터급 일상...</p>
sample.html에서 태그 문자 안쪽의 결과 가져오기
import re
def get_text(tag_string):
html = open('data/sample.html', 'rt',encoding='UTF-8').read()
r = '<'+tag_string+'.*?>(.*?)</'+tag_string
parsing_str = re.findall(r, html)
return '\n'.join(parsing_str)
print(get_text('a'))
비둘기가 물고 온 남자
서북의 저승사자
Doll 체인지
마인드C/김명현
특정 태그의 속성을 파싱하는 구현하는 함수
def get_tag_attr(tag_string, attr):
html = open('data/sample.html', 'rt', encoding='UTF-8').read()
r = '<'+tag_string+'.*?'+attr+'="(.*?)".*?>'
parsing_str = re.findall(r, html)
return parsing_str
print(get_tag_attr('p', 'class'))
['author2']
Comments