ホームページ  >  記事  >  システムチュートリアル  >  Python クローラーが映画「Wolf Warrior」レビューを分析

Python クローラーが映画「Wolf Warrior」レビューを分析

WBOY
WBOY転載
2024-01-05 21:44:121084ブラウズ
###導入### 『狼戦士II』公開から25日目である8月20日の時点で興行収入は50億元を超え、アジア映画としては世界映画史上唯一興行収入トップ100に入った。この記事では、Python クローラーを使用してデータを取得し、Douban 映画レビューを分析し、Douban 映画レビューのクラウド イメージを作成します。では、『Wolf Warrior II』のレビューにはどのような興味深い意味が隠されているのかを見てみましょう。

Python クローラーが映画「Wolf Warrior」レビューを分析

爆発的な興行収入とは関係なく、この映画は観客にさまざまな感情を呼び起こしました。「『ウルフ ウォリアー II』をあえて批判する者は精神薄弱か公共の敵のどちらかです。単純かつ粗暴です」と厳しい言葉を投げかける人もいたそれとして。
誰もが「Wolf Warrior II」についてさまざまなレビューをしており、映画についての意見を表明するためにDoubanにコメントを残しています。さまざまな意見が発表され、メディアは騒いだが、視聴者にはどの意見がより信頼できるのかはまだ分からなかった。

現在までに 15 万件以上のコメントが寄せられていますが、コメントを読んでみると、一定期間は賞賛や非難のコメントがほとんどです。そのため、コメントを閲覧しても、この映画に対するみんなの全体的な意見を知るのは困難です。それでは、データ分析を使用して、これらのコメントでどのような興味深いことが起こったのかを見てみましょう。

この記事では、Python クローラーを通じてデータを取得し、Douban 映画レビューを分析し、Douban 映画レビューのクラウド イメージを作成します。では、『Wolf Warrior II』のレビューにはどのような興味深い意味が隠されているのかを見てみましょう。

###データ収集### この記事ではPythonクローラーで取得したデータを使用しており、主にrequestsパッケージと通常パッケージreを使用していますが、このプログラムでは検証コードは処理しません。以前、Douban の Web ページをクロールしたことがありますが、その時はクロールされたコンテンツが少なかったため、認証コードには遭遇しませんでした。このクローラーを書いたときは認証コードは出ないと思っていましたが、15,000件ほどのコメントをクロールした時点で認証コードが表示されました。 それで思ったのですが、たったの12万ではないでしょうか?認証コードを入力するのはせいぜい十数回程度だったので、認証コードを気にする必要はありませんでした。しかし、その後何が起こったのかは私にとって少し混乱しました。約 15,000 件のコメントをクロールして認証コードを入力したとき、約 30,000 件までクロールされると思ったのですが、約 3,000 件クロールしても機能しませんでした。それでも認証コードを入力する必要がありました。コードです。


その後、このようにつまずき、検証コードを要求するまで長い間這うこともあれば、そうでないこともありました。しかし、最終的にはコメントがクロールされてしまいました。クロールされるコンテンツは主に、ユーザー名、見たかどうか、コメントの星の数、コメントの時間、役に立ったと感じた人の数、コメントの内容です。以下は Python クローラーのコードです:

インポートリクエスト
インポート再 パンダを 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、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> cookies={'cookie':'自分の cookie'} #つまり、あなたのアカウントに対応する cookie を見つけます<br> reg=re.compile(r'') #次のページ<br> ren=re.compile(r'<br>(.*?)<br>.*?comment">(.*?).*?.*?<span>(.*?).*?</span> (.*?)<span .>.*?title="(.*?)"><span>.*?title="(.*?)">.*?class=""> (.*?) \n',re.S) #コメントとその他のコンテンツ</span> while html.status_code==200:</span> url_next='https://movie.douban.com/subject/26363254/comments' re.findall(reg,html.text)[0]<br> zhanlang=re.findall(ren,html.text)<br> データ=pd.DataFrame(zhanlang)<br> data.to_csv('/home/wajuejiprince/document/zhanlang/zhanlangpinglun.csv', header=False,index=False,mode='a ') #csv ファイルを書き込みます。'a ' は追加モードです<br> データ=[]<br> zhanlang=[]<br> html=requests.get(url_next,cookies=cookies,headers=head)<br><br> 上記コードでは、User-Agent、Cookie、CSVの保存パスなどを独自に設定し、クロールしたコンテンツをCSV形式のファイルに保存してください。
データクリーニング

この記事では R 言語を使用してデータを処理しています。クロール時にクロールされるコンテンツの構造には細心の注意を払っていますが、意図しない値が含まれることは避けられません。たとえば、一部のコメント内容はコメント投稿者アイテムに表示されるため、データをクリーンアップする必要があります。

まず、使用するすべてのパッケージをロードします:

ライブラリ(データ.テーブル)
ライブラリ(たくさん) ライブラリ(stringr)<br> ライブラリ(jiebaR)<br> ライブラリ(wordcloud2)<br> ライブラリ(magrittr)<br><br> データをインポートしてクリーンアップします:
dt ###データ分析### まずはコメントの状況を星の数で見てみましょう。

plot_ly(my_dt[,.(.N),by=.(五つ星の数値)],type = 'bar',x=~五つ星の数値,y=~N)


<p>五芒星の数は 5 つのレベルに対応しており、5 つ星は非常に推奨されることを意味し、4 つ星は推奨されることを意味し、3 つ星はまあまあ、2 つ星は悪い、1 つ星は非常に悪いを意味します。 <br> 『ペンタグラム』のレビューを見れば、大多数の視聴者がこの映画に満足すると信じる理由があることは明らかです。 </p> <p>まずコメントを分割する必要があります: <br> <code>週# 全体的なコメントクラウド表示: <br> <br>words<code>�ta.table() setnames(単語,"N","ピンシュ")<br> Words[pinshu>1000] #低頻度単語 (1000 未満) を削除<br> wordcloud2(words[pinshu>1000], size = 2, fontFamily = "Microsoft Yahei", color = "random-light", backgroundColor = "grey")<br> データが多すぎて壊れたパソコンがフリーズしてしまったため、雲図を作成する際に頻度が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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はlinuxprobe.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。