BLOG/웹크롤링
[웹크롤링] 크롤링해서 얻은 텍스트, 앞 뒤 공백 제거하려면? - strip
알디노
2021. 3. 18. 09:40
크롤링을 하면 주로 텍스트를 추출하게 되는데요, 이때 추출한 텍스트 앞, 뒤로 공백이 같이 추출될 수 있습니다.
이러한 경우 공백을 제거한 뒤 저장하는 것이 나중에 분석 및 처리를 위해서도 좋은데요, 어떻게 하면 앞, 뒤 공백을 제거할 수 있는지 살펴보도록 하겠습니다.
- strip() : 문자열 앞 뒤 공백 제거하기
먼저, 다음과 같이 뉴스 기사 제목을 크롤링해서 저장한 리스트가 있다고 가정해보겠습니다.
news = [' KBS \'절반 억대연봉\' 사과에…나경원 "수신료인상 반대" ',
' SK하이닉스 성과급 불만에 최태원 "작년 연봉 전부 반납" 선언',
" 안철수-금태섭 채널 열렸다…野 '계단식 단일화론' 급물살(종합)" ,
'與, 법관탄핵안 161명 공동발의…4일 국회통과 유력(종합) ',
' 국민의힘 ‘승부수’…가덕신공항에 해저터널까지 ']
news 리스트를 보면 각 문자열 데이터 앞 또는 뒤에 빈 공백이 포함되어 있는 것을 볼 수 있는데요,
이러한 공백은 strip() 함수를 이용하여 앞 뒤 공백을 모두 한 번에 제거할 수 있습니다.
strip() 함수는 text라는 문자열이 있을 때, text.strip() 처럼 코드를 작성해서 사용할 수 있습니다.
따라서 리스트 안에 있는 문자열의 앞 뒤 공백을 제거하려면 아래와 같이 for문을 사용하여 제거할 수 있습니다.
news2 = []
for title in news :
news2.append(title.strip())
위 코드를 보면 먼저, 공백이 제거된 문자열을 저장할 새로운 빈 리스트 new2를 만들어주었고,
for문에서 append() 함수를 이용하여 공백이 제거된 문자열을 저장하도록 하였습니다.
이제 위 코드를 실행하고 리스트 news2를 출력하면 다음과 같이 공백이 제거된 문자열 데이터를 확인할 수 있답니다.
print(news2)
['KBS \'절반 억대연봉\' 사과에…나경원 "수신료인상 반대"',
'SK하이닉스 성과급 불만에 최태원 "작년 연봉 전부 반납" 선언',
"안철수-금태섭 채널 열렸다…野 '계단식 단일화론' 급물살(종합)",
'與, 법관탄핵안 161명 공동발의…4일 국회통과 유력(종합)',
'국민의힘 ‘승부수’…가덕신공항에 해저터널까지']