【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

这篇具有很好参考价值的文章主要介绍了【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

随着电商平台的兴起,越来越多的人开始在网上购物。而对于电商平台来说,商品信息、价格、评论等数据是非常重要的。因此,抓取电商平台的商品信息、价格、评论等数据成为了一项非常有价值的工作。

接下来就让我来教你 如何使用Python编写爬虫程序,抓取电商平台的商品信息、价格、评论等数据

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

本次案例实现目标

  • 书籍基本数据
  • 实现可视化图表
  • 书籍评论数据
  • 评论可以实现词云图

最基本思路流程: <通用>

一. 数据来源分析

1.只有当你知道你想要数据内容, 是来自于哪里的时候, 才能通过代码请求得到数据
2.打开 F12 开发者工具进行抓包分析
3.通过关键字进行搜索查询数据包是请求那个url地址

二. 代码实现步骤过程: 代码实现基本四大步骤

1.发送请求, 模拟浏览器对于url地址<刚刚分析得到的url地址>发送请求
2.获取数据, 获取服务器返回响应数据 —> 开发者工具里面 response
3.解析数据, 提取我们想要的数据内容 —> 书籍基本信息
4.保存数据, 把数据内容保存到表格里面

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

代码实现

获取书籍详情信息

发送请求

源码.资料.素材.点击领取即可

url = f'http://bang.dangdang.com/books/bestsellers/01.00.00.00.00.00-recent7-0-0-1-1'
# 代码模拟浏览器发送请求 ---> headers请求头 <可以复制粘贴>
headers = {
    # User-Agent 用户代理 表示浏览器基本身份标识
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36'
}
# 发送请求
response = requests.get(url=url, headers=headers)
解析数据
# 转换数据类型 ---> 可解析对象
selector = parsel.Selector(response.text)
# 第一次提取, 获取所有li标签
lis = selector.css('.bang_list_mode li')  # 返回列表
# for循环遍历, 把列表里面的元素一个一个提取出来
for li in lis:
    title = li.css('.name a::attr(title)').get()  # 标题/书名
    recommend = li.css('.tuijian::text').get().replace('推荐', '')  # 推荐
    star = li.css('.star a::text').get().replace('条评论', '')  # 评价
    author = li.css('div:nth-child(5) a:nth-child(1)::attr(title)').get()  # 作者
    date = li.css('div:nth-child(6) span::text').get()  # 出版日期
    press = li.css('div:nth-child(6) a::text').get()  # 出版社
    price_r = li.css('.price .price_r::text').get()  # 原价
    price_n = li.css('.price .price_n::text').get()  # 售价
    price_e = li.css('.price_e span::text').get()  # 电子书价格
    href = li.css('.name a::attr(href)').get()  # 详情页
    dit = {
        '标题': title,
        '推荐': recommend,
        '评价': star,
        '作者': author,
        '出版日期': date,
        '出版社': press,
        '原价': price_r,
        '售价': price_n,
        '电子书价格': price_e,
        '详情页': href,
    }
    csv_writer.writerow(dit)
    print(dit)

保存数据
f = open('书籍.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=[
    '标题',
    '推荐',
    '评价',
    '作者',
    '出版日期',
    '出版社',
    '原价',
    '售价',
    '电子书价格',
    '详情页',
])
# 写入表头
csv_writer.writeheader()
运行代码得到结果

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

可视化图表

书籍总体价格区间

python学习交流Q群:770699889 ###
pie1 = (
    Pie(init_opts=opts.InitOpts(theme='dark',width='1000px',height='600px'))
    
    .add('', datas_pair_1, radius=['35%', '60%'])
    .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}:{d}%"))
    .set_global_opts(
        title_opts=opts.TitleOpts(
            title="当当网书籍\n\n原价价格区间", 
            pos_left='center', 
            pos_top='center',
            title_textstyle_opts=opts.TextStyleOpts(
                color='#F0F8FF', 
                font_size=20, 
                font_weight='bold'
            ),
        )
    )
    .set_colors(['#EF9050', '#3B7BA9', '#6FB27C', '#FFAF34', '#D8BFD8', '#00BFFF', '#7FFFAA'])
)
pie1.render_notebook() 

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

pie1 = (
    Pie(init_opts=opts.InitOpts(theme='dark',width='1000px',height='600px'))
    
    .add('', datas_pair_2, radius=['35%', '60%'])
    .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}:{d}%"))
    .set_global_opts(
        title_opts=opts.TitleOpts(
            title="当当网书籍\n\n售价价格区间", 
            pos_left='center', 
            pos_top='center',
            title_textstyle_opts=opts.TextStyleOpts(
                color='#F0F8FF', 
                font_size=20, 
                font_weight='bold'
            ),
        )
    )
    .set_colors(['#EF9050', '#3B7BA9', '#6FB27C', '#FFAF34', '#D8BFD8', '#00BFFF', '#7FFFAA'])
)
pie1.render_notebook() 

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

各个出版社书籍数量柱状图

bar=(
    Bar(init_opts=opts.InitOpts(height='500px',width='1000px',theme='dark'))
    .add_xaxis(counts.index.tolist())
    .add_yaxis(
        '出版社书籍数量',
        counts.values.tolist(),
        label_opts=opts.LabelOpts(is_show=True,position='top'),
        itemstyle_opts=opts.ItemStyleOpts(
            color=JsCode("""new echarts.graphic.LinearGradient(
            0, 0, 0, 1,[{offset: 0,color: 'rgb(255,99,71)'}, {offset: 1,color: 'rgb(32,178,170)'}])
            """
            )
        )
    )
    .set_global_opts(
        title_opts=opts.TitleOpts(
            title='各个出版社书籍数量柱状图'),
            xaxis_opts=opts.AxisOpts(name='书籍名称',
            type_='category',                                           
            axislabel_opts=opts.LabelOpts(rotate=90),
        ),
        yaxis_opts=opts.AxisOpts(
            name='数量',
            min_=0,
            max_=29.0,
            splitline_opts=opts.SplitLineOpts(is_show=True,linestyle_opts=opts.LineStyleOpts(type_='dash'))
        ),
        tooltip_opts=opts.TooltipOpts(trigger='axis',axis_pointer_type='cross')
    )

    .set_series_opts(
        markline_opts=opts.MarkLineOpts(
            data=[
                opts.MarkLineItem(type_='average',name='均值'),
                opts.MarkLineItem(type_='max',name='最大值'),
                opts.MarkLineItem(type_='min',name='最小值'),
            ]
        )
    )
)
bar.render_notebook()

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

电子书版本占比

c = (
    Liquid()
    .add("lq", [1-per], is_outline_show=False)
    .set_global_opts(title_opts=opts.TitleOpts(title="电子书版本占比"))
)
c.render_notebook()

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

书籍评论数据

源码点击文末名片获取
for page in range(1, 11):
    time.sleep(1)
    # 确定请求url地址
    url = 'http://product.dangdang.com/index.php'
    # 请求参数
    data = {
        'r': 'comment/list',
        'productId': '29129370',
        'categoryPath': '01.43.79.01.00.00',
        'mainProductId': '29129370',
        'mediumId': '0',
        'pageIndex': page,
        'sortType': '1',
        'filterType': '1',
        'isSystem': '1',
        'tagId': '0',
        'tagFilterCount': '0',
        'template': 'publish',
        'long_or_short': 'short',
    }
    # headers 请求头
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36'
    }
    # 发送请求
    response =  requests.get(url=url, params=data, headers=headers)
    # response.json() 获取响应json字典数据 键值对取值 ---> 根据冒号左边的内容, 提取冒号右边的内容
    html_data = response.json()['data']['list']['html']
    content_list = re.findall("<span><a href=.*?' target='_blank'>(.*?)</a></span>", html_data)
    with open('评论.txt', mode='a', encoding='utf-8') as f:
        f.write('\n'.join(content_list))
        f.write('\n')
        print(content_list)

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

词云

import jieba # 分词模块 pip install jieba
import wordcloud
import imageio
img = imageio.imread('123.png')
# wordcloud
# 1. 打开文件 获取弹幕数据
# mode='r' 一定要写吗  不一定 默认以 r
# encoding='' 要写吗?  肯定要的
f = open('评论.txt', mode='r', encoding='utf-8')
txt = f.read()
# print(txt)
# 2. jieba分词 分割词汇
txt_list = jieba.lcut(txt)
# print(txt_list)
# 列表转字符串怎么转
string = ' '.join(txt_list)
# print(string)
# 3. 词云图设置
wc = wordcloud.WordCloud(
    width=800,  # 宽度
    height=500, # 高度
    background_color='white', # 背景颜色
    mask=img, # 设置图片样式
    font_path='msyh.ttc',
    scale=15,
    stopwords={'了', '的'},
    contour_width=5,
    contour_color='red'
)
# 4. 输入文字内容 (字符串的形式)
wc.generate(string)
# 5. 输出图片
wc.to_file('output2.png')

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)

视频教程

源码.资料.素材.点击领取即可

有一说一 这个案例当成自己的python作业,感觉还挺不错的

【爬虫+可视化】采集当当网商品数据信息,做可视化分析

好啦,今天的分享到这里就结束了 ~

对文章有问题的,或者有其他关于python的问题,可以在评论区留言或者私信我哦
觉得我分享的文章不错的话,可以关注一下我,或者给文章点赞(/≧▽≦)/

【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)文章来源地址https://www.toymoban.com/news/detail-509399.html

到了这里,关于【Python爬虫+数据分析】采集电商平台数据信息,并做可视化演示(带视频案例)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 电商数据采集和数据分析

    不管是做渠道价格的治理,还是做窜货、假货的打击,都需要品牌对线上数据尽数掌握,准确的数据是驱动服务的关键,所以做好电商数据的采集和分析非常重要。 当线上链接较多,品牌又需要监测线上数据时,单靠人工肯定不行,需要依靠系统去完成数据的抓取,当然品牌

    2024年02月12日
    浏览(49)
  • python爬各平台评论并数据分析——数据采集、评论情绪分析、新闻热度

    1.python之matplotlib使用系统字体 用于解决python绘图中,中文字体显示问题 2.cookie与视频页面id(b站、微博等)查看 F12打开网页开发者模式,然后F5刷新,进入控制台中的网络,查看Fetch/XHR 3.爬取wb评论时,最好使用网页手机端 网页手机端:https://m.weibo.cn/?sudaref=cn.bing.com 4.从存储

    2024年02月09日
    浏览(55)
  • 电商数据分析--常见的数据采集工具及方法

    数据采集|数据运营和数据分析 走进数据,一起学习数据处理,数据分析,数据挖掘,一起成长,相信通过一起努力,未来2-3年我们都会成为公司的中流砥柱。懂数据,会分析,会挖掘,再加上业务知识,不管你是产品经理,运营人员,业务人员等,相信我们能更加把握决策

    2024年01月17日
    浏览(48)
  • 毕业设计 Python社交平台舆情分析与可视化 - 数据爬虫 大数据

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月08日
    浏览(51)
  • 大数据分析——某电商平台药品销售数据分析

    大数据分析——某电商平台药品销售数据分析 一、   选题背景 我们已经习惯了在网上购买衣服、数码产品和家用电器,但是在网上买药品的还是不多。据史国网上药店理事会调查报告显示:2022 年,医药 B2C 的规模达到 4 亿元,仅出现 5 家锁售额达.5000 万元的网上药店。而

    2024年02月04日
    浏览(48)
  • 大数据毕业设计Python+Django旅游景点评论数据采集分析可视化系统 NLP情感分析 LDA主题分析 bayes分类 旅游爬虫 旅游景点评论爬虫 机器学习 深度学习 人工智能 计算机毕业设计

    毕业论文(设计)开题报告 学生姓名 学  号 所在学院 信息工程学院 专  业 指导教师姓名 指导教师职称 工程师 助教 指导教师单位 论文(设计)题目 基于朴素贝叶斯算法旅游景点线上评价情感分析 开  题  报  告  内  容 选题依据及研究内容(国内、外研究现状,初步

    2024年04月17日
    浏览(66)
  • 电商平台数据查询工具(京东数据分析软件)

    ​“京东爆款如何打造”是很多商家都头疼的问题。 下面,6个步骤分享给大家。 首先是选品。对于处于不同阶段的商家来说,选品方式不同。 针对正准备开店的商家,选品可通过以下方式: (1)市场分析和自身情况,确定主打品类。 (2)行业市场和京东平台市场、品类

    2024年02月04日
    浏览(55)
  • 分享个常用的跨境电商数据分析平台

    在跨境电商人眼中,适合用在跨境电商数据分析上的大数据分析平台该是怎样的?是效率高、财务指标计算快、业务能随时自助分析,最好是能将平台自身的分析经验分享给跨境电商企业,为企业提供更专业的服务。这样的大数据分析平台虽然少,却还是有的。 接下来要介绍

    2024年02月06日
    浏览(55)
  • 获取主流电商平台商品价格,库存信息,数据分析,SKU详情

    要接入API接口以采集电商平台上的商品数据,可以按照以下步骤进行: 1、找到可用的API接口:首先,需要找到支持查询商品信息的API接口。这些信息通常可以在电商平台的官方文档或开发者门户网站上找到。 2、注册并获取API密钥:在使用API接口之前,需要注册并获取API密钥

    2024年01月19日
    浏览(57)
  • 大数据毕设-基于hadoop+spark+大数据+机器学习+大屏的电商商品数据分析可视化系统设计实现 电商平台数据可视化实时监控系统 评论数据情感分析

    🔥作者:雨晨源码🔥 💖简介:java、微信小程序、安卓;定制开发,远程调试 代码讲解,文档指导,ppt制作💖 精彩专栏推荐订阅:在下方专栏👇🏻👇🏻👇🏻👇🏻 Java精彩实战毕设项目案例 小程序精彩项目案例 Python实战项目案例 ​💕💕 文末获取源码 本次文章主要是

    2024年02月03日
    浏览(116)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包