Python爬虫入门教程27:爬取某电商平台数据内容并做数据可视化(1)

本文是一份详细的Python爬虫入门教程,涵盖了从基础的网页数据抓取(如豆瓣电影、小说、房产信息等)到高级应用(如B站视频弹幕、数据可视化等),并介绍了相关技术和工具的使用。作者分享了如何使用Python进行爬取、处理和可视化数据的过程。
摘要由CSDN通过智能技术生成

前言💨


本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

前文内容💨


Python爬虫入门教程01:豆瓣Top电影爬取

Python爬虫入门教程02:小说爬取

Python爬虫入门教程03:二手房数据爬取

Python爬虫入门教程04:招聘信息爬取

Python爬虫入门教程05:B站视频弹幕的爬取

Python爬虫入门教程06:爬取数据后的词云图制作

Python爬虫入门教程07:腾讯视频弹幕爬取

Python爬虫入门教程08:爬取csdn文章保存成PDF

Python爬虫入门教程09:多线程爬取表情包图片

Python爬虫入门教程10:彼岸壁纸爬取

Python爬虫入门教程11:新版王者荣耀皮肤图片的爬取

Python爬虫入门教程12:英雄联盟皮肤图片的爬取

Python爬虫入门教程13:高质量电脑桌面壁纸爬取

Python爬虫入门教程14:有声书音频爬取

Python爬虫入门教程15:音乐网站数据的爬取

Python爬虫入门教程17:音乐歌曲的爬取

Python爬虫入门教程18:好看视频的爬取

Python爬取入门教程19:YY短视频的爬取

Python爬虫入门教程20:IP代理的爬取使用

Python爬虫入门教程21:付费文档的爬取

Python爬虫入门教程22:百度翻译JS解密

Python爬虫入门教程23:A站视频的爬取,解密m3u8视频格式

Python爬虫入门教程24:下载某网站付费文档保存PDF

Python爬虫入门教程25:绕过JS加密参数,实现批量下载抖某音无水印视频内容

Python爬虫入门教程26:快手视频网站数据内容下载

PS:如有需要 Python学习资料 以及 解答 的小伙伴可以加点击下方链接自行获取

python免费学习资料以及群交流解答点击即可加入

基本开发环境💨


  • Python 3.6

  • Pycharm

相关模块的使用💨


import requests

import parsel

import csv

import pandas as pd

from pyecharts.charts import *

from pyecharts.globals import ThemeType#设定主题

from pyecharts.commons.utils import JsCode

import pyecharts.options as opts

安装Python并添加到环境变量,pip安装需要的相关模块即可。

💥需求数据来源分析


在这里插入图片描述

商品数据内容在网页源代码里面有, 所以直接情况网站数据, 然后通过相应的解析方法提取相关数据内容即可。

💥代码实现


import requests

import parsel

import csv

f = open(‘书籍信息3.csv’, mode=‘a’, encoding=‘utf-8’, newline=‘’)

csv_writer = csv.DictWriter(f, fieldnames=[‘标题’, ‘推荐’, ‘评价’,

‘作者’, ‘出版日期’, ‘出版社’,

‘原价’, ‘售价’, ‘电子书价格’,

‘详情页’])

csv_writer.writeheader()

for page in range(1, 26):

print(f’正在保存第{page}页数据内容===========')

url = f’http://bang.dangdang.com/books/bestsellers/01.00.00.00.00.00-year-2017-0-1-{page}’

headers = {

‘User-Agent’: ‘Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36’

}

response = requests.get(url=url, headers=headers)

print(response.text)

selector = parsel.Selector(response.text)

lis = selector.css(‘.bang_list_mode li’)

for li in lis:

title = li.css(‘.name a::attr(title)’).get() # 标题/书名

recommend = li.css(‘.tuijian::text’).get() # 推荐

star = li.css(‘.star a::text’).get() # 评价

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,

}

with open(‘书籍.csv’, mode=‘a’, encoding=‘utf-8’) as f:

f.write(f’{title},{recommend},{star},{author},{date},{press},{price_r},{price_n},{price_e}\n’)

csv_writer.writerow(dit)

print(title, recommend, star, author, date, press, price_r, price_n, price_e, sep=’ | ')

💥实现效果


在这里插入图片描述

在这里插入图片描述

💥数据可视化效果


❤书籍原价价格区间❤

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()

在这里插入图片描述

❤书籍售价价格区间❤

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’])

)

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)

c3EPw-1712937779460)]

[外链图片转存中…(img-ONlsZpmB-1712937779460)]

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注Python)

img
  • 13
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值