使用 Python 進行 Flipkart 評論情感分析


Flipkart 是印度最大的線上市場之一,購物者可以在那裡購買從電子產品到服裝的所有商品。由於消費者數量不斷增加以及他們提供的反饋,任何商業服務都必須檢查評論的語氣以改進其服務。情感分析是一種自然語言處理方法,用於檢測文字是否表達積極、消極或中立的態度。在本技術部落格中,我們將使用 Python 對產品評論進行情感分析來探討這種方法。

安裝和語法

要對 Flipkart 評論進行情感分析,我們需要安裝一些 Python 庫。

pip install beautifulsoup4
pip install textblob
pip install requests

應用程式的樣板程式碼如下所示:

import requests
from bs4 import BeautifulSoup

url = "https://www.flipkart.com/<product_name>/product-reviews/<product_id>?page=<page_number>"
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')

演算法

使用 TextBlob 庫對 Flipkart 評論進行情感分析的演算法如下:

  • 使用網路爬取技術提取 Flipkart 評論。

  • 透過去除不需要的字元、數字標點符號來預處理評論。

  • 使用TextBlob庫對預處理後的評論進行情感分析。

  • 透過對每個評論的情感評分進行平均,確定評論的整體情感。

示例

import requests
from bs4 import BeautifulSoup
from textblob import TextBlob

url = "https://www.flipkart.com/beston-37-keys-piano-keyboard-toy-microphone-usb-power-cable-sound-recording-function-analog-portable/product-reviews/itmfgdhqpccb9hqb?pid=MKDFGDJXZYND3PSZ&lid=LSTMKDFGDJXZYND3PSZKIDQV7&marketplace=FLIPKART&page=5"
response = requests.get(url)

soup = BeautifulSoup(response.text, 'html.parser')
reviews = soup.find_all('div', {'class': 't-ZTKy'})

for review in reviews[:5]:
   text = review.text
   text = ' '.join(text.split())
   text = ''.join(e for e in text if e.isalnum() or e.isspace())
   sentiment_score = TextBlob(text).sentiment.polarity
   print(text)
   print(sentiment_score)
   if sentiment_score > 0.2:
      print("Analysis: Positive")
   elif sentiment_score < 0.2:
      print("Analysis: Negative")
   else:
      print("Analysis: Neutral")
   print("="*20)

輸出

Third class or lower class product I dont want to abuse but product and seller deserve it Product stopped working after 1 month useShameful for flipkart to keep such type cheap products Quality of flipkart is really degrade and selling products like street vendors Third class qualityREAD MORE
0.18333333333333335
Analysis: Negative
====================
Ok ok productREAD MORE
0.5
Analysis: Positive
====================
Nice but price highREAD MORE
0.55
Analysis: Positive
====================
My piano was problemREAD MORE
0.5
Analysis: Positive
====================
Vary bad prodectREAD MORE
-0.09999999999999992
Analysis: Negative
====================

與以下評論相比,該指令碼的預測準確率為 90%。

解釋

  • 這段 Python 程式碼演示了對 Flipkart(一個流行的線上市場)上列出的產品的評論進行情感分析。該程式從產品頁面獲取評論並分析每個評論的情感。

  • 第一步是匯入必要的模組 - requests、BeautifulSoupTextBlob。requests 模組用於獲取網頁的HTML內容,BeautifulSoup 用於解析 HTML 內容,TextBlob 用於情感分析。

  • 接下來,產品頁面的 URL 被分配給變數 url。requests.get()函式用於獲取網頁的 HTML 內容。response 變數儲存響應物件。

  • 然後,BeautifulSoup 函式用於解析響應物件的 HTML 內容。html.parser 被用作解析器。

  • soup.find_all()函式用於查詢頁面上的所有評論。評論由類屬性設定為t-ZTKy 的 div 標籤識別。reviews 變數儲存所有評論元素。

  • 接下來的步驟是迴圈遍歷前五個評論。在迴圈遍歷前五個評論時,使用review.text方法檢索每個評論的文字,並透過消除空格和數字字元來清理提取的文字,以便進行精確的預測。

  • TextBlob函式用於從清理後的文字建立 TextBlob 物件。TextBlob 物件的 sentiment.polarity 屬性返回評論的情感評分,該評分介於-11之間。

  • 然後列印情感評分以及對情感的分析。如果情感評分大於0.2,則將評論分類為正面。如果情感評分小於0.2,則將評論分類為負面

應用

透過迭代每個審計頁面並將結果儲存在CSV檔案或資料集中,可以擴充套件此方法以對大量調查進行意見分析。企業可以使用它來衡量客戶滿意度並改進其產品。

對 Flipkart 評論進行情感分析可以幫助 Flipkart:

  • 瞭解客戶對其產品和服務的情感。

  • 確定改進領域並採取必要的措施來提高客戶滿意度。

  • 在分析競爭對手的產品後,將你的產品與他們的產品進行比較。

  • 預測其產品和服務的市場走向。

結論

在本技術部落格中,我們探討了如何使用 Python 對 Flipkart 評論進行情感分析。我們使用網路爬取技術提取評論並使用 TextBlob 庫進行情感分析。對 Flipkart 評論進行情感分析可以幫助 Flipkart 改進其服務並提高客戶滿意度。

更新於:2023年8月22日

460 次瀏覽

開啟你的職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.