> 시스템 튜토리얼 > 리눅스 > Python 크롤러는 'Wolf Warrior' 영화 리뷰를 분석합니다.

Python 크롤러는 'Wolf Warrior' 영화 리뷰를 분석합니다.

WBOY
풀어 주다: 2024-01-05 21:44:12
앞으로
1105명이 탐색했습니다.
소개 개봉 25일째인 8월 20일 기준, '늑대전사2'는 박스오피스 50억 위안 이상의 수익을 올리며, 세계영화사상 박스오피스 100위권에 진입한 유일한 아시아 영화가 됐다. 이 기사에서는 Python 크롤러를 사용하여 데이터를 얻고, Douban 영화 리뷰를 분석하고, Douban 영화 리뷰의 클라우드 이미지를 만듭니다. 이제 '늑대전사2' 리뷰에는 어떤 흥미로운 서브텍스트가 숨겨져 있는지 살펴보자.

Python 크롤러는 Wolf Warrior 영화 리뷰를 분석합니다.

영화는 폭발적인 흥행 외에도 관객들에게 다양한 감정을 불러일으켰습니다. 어떤 사람들은 "늑대전사2"를 감히 비판하는 사람은 정신박약자이거나 공공의 적입니다.
모두가 "늑대 전사 II"에 대해 엇갈린 평가를 내렸고 Douban에 댓글을 남겨 영화에 대한 의견을 표현했습니다. 다양한 댓글이 쏟아지고 언론이 난리를 피웠지만 관객들은 여전히 ​​어느 의견이 더 신빙성 있는지 알 수 없었다.

지금까지 달린 댓글은 15만 개가 넘습니다. 댓글을 읽어보면 상당 기간 칭찬하거나 폄하하는 댓글이 대부분일 것입니다. 그래서 이 영화에 대한 모든 사람의 전반적인 의견이 무엇인지 댓글을 살펴보는 것만으로는 알기 어렵습니다. 이제 데이터 분석을 통해 이 댓글에서 어떤 흥미로운 일이 일어났는지 살펴보겠습니다!

이 기사에서는 Python 크롤러를 사용하여 데이터를 얻고 Douban 영화 리뷰를 분석하고 Douban 영화 리뷰의 클라우드 이미지를 만듭니다. 이제 '늑대전사2' 리뷰에는 어떤 흥미로운 서브텍스트가 숨겨져 있는지 살펴보자.

데이터 획득

이 글은 Python 크롤러에서 얻은 데이터를 사용합니다. 주로 요청 패키지와 일반 패키지를 사용합니다. 이 프로그램은 확인 코드를 처리하지 않습니다. 이전에 Douban의 웹페이지를 크롤링한 적이 있는데 크롤링된 콘텐츠가 작아서 인증 코드를 발견하지 못했습니다. 이 크롤러를 작성할 때에는 인증코드가 없을 줄 알았는데 댓글이 15,000개 정도 크롤링 되니까 인증코드가 뜹니다.
그러다가 생각해보니 그냥 12만명 아닌가? 인증코드를 입력한 횟수가 기껏해야 열두 번 정도밖에 되지 않아 인증코드를 처리할 필요가 없었습니다. 그런데 그다음에 일어난 일이 저에게는 좀 혼란스러웠습니다. 댓글을 15,000개 정도 크롤링하고 인증코드를 입력하니 30,000개 정도 크롤링이 될 줄 알았는데, 3,000개 정도 크롤링한 후에도 계속 입력이 안 되더라구요. 확인 코드. .

그런데 계속 이렇게 맴돌다가 인증코드가 필요할 때까지 크롤링하는 데 오랜 시간이 걸렸고 때로는 그렇지 않았습니다. 하지만 결국 댓글은 크롤링되었습니다. 크롤링되는 콘텐츠는 주로 사용자 이름, 보았는지 여부, 댓글의 별 수, 댓글 시간, 유용하다고 생각한 사람 수, 댓글 내용입니다. 다음은 Python 크롤러의 코드입니다:
가져오기 요청<br> 다시 가져오기<br> 팬더를 pd로 가져오기<br> url_first='https://movie.douban.com/subject/26363254/comments?start=0'<br> head={'User-Agent':'Mozilla/5.0(X11; Linux x86_64) AppleWebKit/537.36(KHTML, like Gecko) Ubuntu Chromium/59.0.3071.109 Chrome/59.0.3071.109 Safari/537.36'}<br> html=requests.get(url_first,headers=head,cookies=cookies)<br> cookie={'cookie':'your own cookie'} #즉, 귀하의 계정에 해당하는 쿠키를 찾아보세요<br> reg=re.compile(r'') #다음페이지<br> ren=re.compile(r'<span>(.*?)</span>.*?comment">(.*?).*?.*?<span .>(.*?).*?<span>(.*?)</span>.* ?title="(.*?)"></span>.*?title="(.*?)">.*?class=""> (.*?)n',re.S) #댓글 및 기타 내용 <br> 동안 html.status_code==200:<br> url_next='https://movie.douban.com/subject/26363254/comments'+re.findall(reg,html.text)[0]<br> zhanlang=re.findall(ren,html.text)<br> data=pd.DataFrame(잔랑)<br> data.to_csv('/home/wajuejiprince/document/zhanlang/zhanlangpinglun.csv', header=False,index=False,mode='a+') #csv 파일 쓰기, 'a+'가 추가 모드<br> 데이터=[]<br> 잔랑=[]<br> html=requests.get(url_next,cookies=cookies,headers=head)
위 코드에서 User-Agent, 쿠키, CSV 저장 경로 등을 직접 설정하고, 크롤링된 콘텐츠를 CSV 형식의 파일로 저장해 주세요.

데이터 정리

이 글에서는 데이터를 처리하기 위해 R 언어를 사용합니다. 크롤링할 때 크롤링되는 콘텐츠의 구조에 많은 주의를 기울였지만, 일부 값이 우리가 원하는 것이 아닐 수 없습니다. 예를 들어 일부 댓글 내용이 댓글 작성자 항목에 표시되므로 여전히 데이터 정리가 필요합니다.

먼저 사용하려는 모든 패키지를 로드하세요.
라이브러리(data.table)<br> 도서관(plotly)<br> 도서관(stringr)<br> 도서관(jiebaR)<br> 도서관(wordcloud2)<br> 도서관(magrittr)
데이터 가져오기 및 정리:
dt

간단한 데이터 분석

먼저 별 개수에 따른 댓글 상황을 살펴보겠습니다.
plot_ly(my_dt[,.(.N),by=.(五星数)],type = 'bar',x=~五星数,y=~N)plot_ly(my_dt[,.(.N),by=.(별 다섯개 숫자)],type = 'bar',x=~별 다섯 개 숫자,y=~N)
Python 크롤러는 Wolf Warrior 영화 리뷰를 분석합니다.

🎜

별표의 개수는 5단계에 해당하며, 별 5개는 적극 권장, 별 4개는 권장, 별 3개는 괜찮음, 별 2개는 나쁨, 별 1개는 매우 나쁨을 의미합니다.
Pentagram의 리뷰를 보면 대다수의 시청자가 이 영화에 만족할 것이라고 믿을 만한 이유가 있다는 것이 분명합니다.

먼저 댓글을 분류해야 합니다.
wk <br> 전반적인 리뷰 클라우드 표시: <br> <code>단어%data.table()<br> setnames(단어,"N","pinshu")<br> 단어[pinshu>1000] #빈도가 낮은 단어 제거(1000개 미만)<br> wordcloud2(words[pinshu>1000], 크기 = 2,fontFamily = "Microsoft Yahei", color = "random-light", backgroundColor = "grey")
데이터가 너무 많아서 고장난 컴퓨터가 멈춰서 클라우드 차트를 만들 때 빈도가 1,000 미만인 단어를 제거했습니다. 클라우드 이미지 결과는 다음과 같습니다.
Python 크롤러는 Wolf Warrior 영화 리뷰를 분석합니다.

전반적으로 이번 영상에 대한 모든 분들의 댓글이 꽤 좋아요! 줄거리, 행동, 애국심과 같은 주제가 토론의 ​​초점입니다.

평가 키워드: 오징, 개인의 영웅주의, 메인 테마, 중국, 주인공 아우라, 다강 비서, 매우 불타오르다.

'버닝'이 시청 후 가장 인기 있는 피드백이 아니라는 것을 알 수 있습니다. 시청자들은 우징 자신을 존경하고 애국심과 개인주의에 대해 논평하는 데 더 관심이 있습니다.

댓글 수준이 다른 클라우드 이미지 표시

하지만 평점이 다른 사람들의 댓글이 별도로 표시된다면 어떤 모습일까요? 즉, 5단계(강력히 권장, 권장, 괜찮음, 나쁨, 매우 나쁨)의 리뷰 내용에 대한 클라우드 차트를 생성하는 것입니다. 코드는 다음과 같습니다(기타 코드를 "강력히 권장"으로 변경하면 됩니다).

1. 강력추천 리뷰어들의 댓글 클라우드

Python 크롤러는 Wolf Warrior 영화 리뷰를 분석합니다.

2. 추천 리뷰어 댓글 클라우드

Python 크롤러는 Wolf Warrior 영화 리뷰를 분석합니다.

3. 좋은 리뷰어의 리뷰 클라우드 이미지

Python 크롤러는 Wolf Warrior 영화 리뷰를 분석합니다.

4. 불량 리뷰어의 리뷰 클라우드

Python 크롤러는 Wolf Warrior 영화 리뷰를 분석합니다.

5. 나쁜 리뷰어의 리뷰 클라우드

Python 크롤러는 Wolf Warrior 영화 리뷰를 분석합니다.

결론

다양한 댓글의 단어 분할 결과를 보면 모두 애국심이라는 공통된 주제를 가지고 있습니다.

강력 추천 댓글의 애국 주제 수가 비추천 댓글의 수보다 높을 수 있습니다. 사람들은 애국 주제 이외의 주제에 대해 토론할 의향이 더 높습니다. 부정적인 댓글의 대부분은 애국적인 주제에 관한 것이었습니다. 그리고 그 비율이 매우 흥미롭습니다. 적극 추천하는 사람부터 나쁜 의견을 말하는 사람까지 애국적인 주제의 비율이 점차 증가합니다.

누가 옳고 그른지 주관적으로 판단할 수는 없지만, 서로 다른 관점에 서 있기 때문에 보는 결과도 다릅니다. 우리가 다른 사람들과 의견이 다를 때, 그것은 종종 다른 관점에서 비롯됩니다. 나쁜 댓글을 가진 사람들은 애국적인 주제에 대해 더 많이 생각하고 있을 수도 있습니다. (이것은 단지 애국적인 주제에 대한 토론일 뿐이며 누가 국가를 사랑하거나 싫어하는지가 아닙니다.) !

분석 결과, 이 '늑대전사2'가 이렇게 많은 사람들에게 지지를 받는 근본적인 이유는 '늑대전사1'이 볼 수 없었던 미국 블록버스터 수준의 제작 장면을 달성함과 동시에 애국심을 불러일으키고 사람들의 마음을 불러일으켰습니다.

위 내용은 Python 크롤러는 'Wolf Warrior' 영화 리뷰를 분석합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:linuxprobe.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿