티스토리 뷰

목차



    반응형

     

    HTML 정규식

    파이썬을 통해 자동화할때 웹페이지에서 필요한 정보를 가져올때 해당 태그를 찾아 xpath 또는 css selecter를 이용하여 text 값을 추출할 수 있다. 하지만 매번 태그값이 변경된다면 그에 맞게 변경해줘야 함으로 그냥 html을 통으로 가져와서 파싱하는 방법도 존재한다. 이를 위해서는 html 전체 코드를 문자열로 가져온 후 태그를 제거하여 필요한 부분을 찾으면 된다.

     

     

    파이썬에서 HTML 태그를 제거하는 정규식을 작성하면 된다.

    import re
    
    html_string = "<p>이것은 <strong>HTML</strong> 문자열입니다.</p>"
    no_html_string = re.sub(r'<[^>]*>', '', html_string)
    print(no_html_string) # "이것은 HTML 문자열입니다."

     

    네, 각 줄에 대한 설명은 다음과 같습니다:

    import re
    

    이 줄은 파이썬의 re 모듈을 불러옵니다. re 모듈은 정규식을 사용하여 문자열을 처리하는 데 필요한 함수들을 제공합니다.

    html_string = "<p>이것은 <strong>HTML</strong> 문자열입니다.</p>"
    

    이 줄은 html_string이라는 변수에 HTML 문자열을 저장합니다.

    no_html_string = re.sub(r'<[^>]*>', '', html_string)
    

    이 줄은 re.sub 함수를 사용하여 html_string에서 HTML 태그를 제거합니다. re.sub 함수는 첫 번째 인자로 전달된 정규식 패턴에 해당하는 문자열을 찾아 두 번째 인자로 전달된 문자열로 바꿉니다. 여기서는 <와 > 사이의 모든 문자를 찾아 빈 문자열로 바꾸어 HTML 태그를 제거합니다.

    print(no_html_string) # "이것은 HTML 문자열입니다."
    

    이 줄은 no_html_string 변수의 값을 출력합니다. HTML 태그가 제거된 문자열이 출력됩니다.

    반응형