爬虫京东Apple12部分销量数据可视化操作

本文介绍了如何使用Python爬虫抓取京东Apple12的前十页评价数据,生成Excel表格,并进行数据可视化分析,通过饼图展示了不同型号手机的销量情况,强调了Python在数据分析中的辅助作用。
摘要由CSDN通过智能技术生成

整体过程

爬取iphone12京东前十页评价相关内容,生成excel表格,进行数据可视化分析

爬虫部分

  1. 找到要爬取的url网页 ,调用requests库进行模拟浏览器请求访问;
  2. 利用防盗链User-Agent来辅助获取目标网页
  3. 将网页评价str类内容进行JSON格式内容替换
  4. 然后找到字典里所要爬取的键-key(主要爬取颜色,评价内容,手机内存
  5. 将爬取的数据存储到excel当中进行保存为.xlsx文件
  6. 然后进行数据可视化分析 _绘制饼图更加直观方便看出哪种型号的手机销量更好

数据可视化分析

数据可视化分析
生成的Excel表格
生成的sheet活动表

爬虫生成excel文件代码

# -*- coding: utf-8 -*-
# @Time      : 2021/9/7 9:04
# @Author    : LJH
import requests
import json
import time
import openpyxl
from bs4 import BeautifulSoup
from urllib.parse import quote #转换中文的工具

def get_comments(productId,page):
    headers = {
   "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36"
               }
    url = "https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId={0}&score=0&sortType=5&page={1}&pageSize=10&isShadowSku=0&fold=1".format(productId,page)
    #url = "https://club.jd.com/comment/productPageComments.action?callback=fetchJSON_comment98&productId=100004770263&score=0&sortType=5&page=0&pageSize=10&isShadowSku=0&fold=1"
    resp = requests.get(url,headers=
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为了实现Python爬虫京东数据可视化,我们需要进行以下步骤: 1.使用Python爬虫爬取京东商品评论数据,并进行数据预处理操作,例如去除HTML标签、去除停用词等。 2.使用Python文本情感分析库对评论数据进行情感分析,得到每条评论的情感得分。 3.将情感得分与评论内容一起存储到CSV文件中。 4.使用Python数据可视化库,例如matplotlib或seaborn,对评论数据进行可视化分析,例如绘制情感得分的直方图、饼图等。 以下是一个简单的Python爬虫京东数据可视化的例子: ```python import requests from bs4 import BeautifulSoup import jieba import jieba.analyse import pandas as pd from snownlp import SnowNLP import matplotlib.pyplot as plt # 爬取京东商品评论数据 def get_comments(url): headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'} response = requests.get(url, headers=headers) soup = BeautifulSoup(response.text, 'html.parser') comments = soup.find_all('div', class_='comment-item') return comments # 数据预处理 def clean_comments(comments): cleaned_comments = [] for comment in comments: cleaned_comment = '' for string in comment.stripped_strings: cleaned_comment += string cleaned_comments.append(cleaned_comment) return cleaned_comments # 情感分析 def sentiment_analysis(comments): sentiments = [] for comment in comments: s = SnowNLP(comment) sentiments.append(s.sentiments) return sentiments # 保存数据到CSV文件 def save_to_csv(comments, sentiments): data = {'comment': comments, 'sentiment': sentiments} df = pd.DataFrame(data) df.to_csv('comments.csv', index=False) # 可视化分析 def visualize_sentiments(sentiments): plt.hist(sentiments, bins=20) plt.xlabel('Sentiment Score') plt.ylabel('Number of Comments') plt.title('Sentiment Analysis of JD Comments') plt.show() # 主函数 if __name__ == '__main__': url = 'https://item.jd.com/100008348542.html#comment' comments = get_comments(url) cleaned_comments = clean_comments(comments) sentiments = sentiment_analysis(cleaned_comments) save_to_csv(cleaned_comments, sentiments) visualize_sentiments(sentiments) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值