Scrapy를 이용한 크롤링좀 도와주세요


<span class="fnt_e07" lang="en">I <i class="fnt_e08 N=a:smd.words" tabindex="0" lang="en"><input type="hidden" name="assist" value="don" lang="en">don</i>'t <i class="fnt_e08 N=a:smd.words" tabindex="0" lang="en"><input type="hidden" name="assist" value="have" lang="en">have</i> <i class="fnt_e08 N=a:smd.words" tabindex="0" lang="en"><input type="hidden" name="assist" value="a" lang="en">a</i> <i class="fnt_e08 N=a:smd.words" tabindex="0" lang="en"><input type="hidden" name="assist" value="bank account" lang="en">bank <b lang="en">account</b></i>.</span>

제가 저기 코드에서 에 있는 텍스트 항목과 에 있는 텍스트 항목을 가져오려고하는데 저기 위 코드에서 보면 I don't have a bank account. 를 가져오고 싶은데 저렇게 태그로 짤려서 나눠져서 있어서 어떻게 가져와야 할지 모르겠습니다. 도와주세요 ㅠㅠ

  • 2016년 06월 11일에 작성됨

조회수 261


1 답변


좋아요
1
싫어요
채택취소하기

전체 문자열 중에서 <>를 포함해, <, > 로 쌓여있는 모든 문자열을 제거하면 될 것 같습니다.

간단하게 예를 들면

import re

string = """<span class="fnt_e07" lang="en">I <i class="fnt_e08 N=a:smd.words" tabindex="0" lang="en"><input type="hidden" name="assist" value="don" lang="en">don</i>'t <i class="fnt_e08 N=a:smd.words" tabindex="0" lang="en"><input type="hidden" name="assist" value="have" lang="en">have</i> <i class="fnt_e08 N=a:smd.words" tabindex="0" lang="en"><input type="hidden" name="assist" value="a" lang="en">a</i> <i class="fnt_e08 N=a:smd.words" tabindex="0" lang="en"><input type="hidden" name="assist" value="bank account" lang="en">bank <b lang="en">account</b></i>.</span>"""
text = re.sub(r'<[^>]*?>', '', string)

print(text)

출력 : I don't have a bank account.

과 같이 쓸 수 있구요.

정규 표현식은 tryhelloworld - 정규표현식에서 배울 수 있으며, regex101에서 테스트 할 수 있습니다

  • 2016년 06월 13일에 작성됨
    시원한 날만 일하자

  • 정말 감사합니다     DeepLearn   2016.6.15 23:42     

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

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