Python抓取电商平台数据 / 采集商品评论 / 可视化展示 词云图...

前言

大家早好、午好、晚好吖 ❤ ~

我给大家准备了一些资料,包括:

2022最新Python视频教程、Python电子书10个G

(涵盖基础、爬虫、数据分析、web开发、机器学习、人工智能、面试题)、Python学习路线图等等

直接在文末名片自取即可!

本次亮点

  1. selenium工具的使用

  2. 结构化的数据解析

  3. csv数据保存

环境介绍:

  • python 3.8

  • pycharm

  • 谷歌驱动 谷歌浏览器

selenium 操控 谷歌驱动 然后 操控浏览器 模拟人的行为去操作浏览器

模块使用:

  • selenium

    pip install selenium==3.141.0 (指定版本安装模块)

    安装模块时候速度比较慢 可以切换一下镜像源

    (模拟人的行为去操作浏览器)

  • csv

    内置模块 不需要安装 把数据保存到csv表格里面

  • time

    内置模块 不需要安装 时间模块 延时操作 延时等待

安装python第三方模块:

  1. win + R 输入 cmd 点击确定, 输入安装命令 pip install 模块名 (pip install requests) 回车

  2. 在pycharm中点击Terminal(终端) 输入安装命令

selenium 模拟人的行为去操作浏览器

  1. 打开浏览器

  2. 输入网址

  3. 输入想要商品名字

  4. 点击搜索 查看商品数据

  5. 获取我们想要数据内容

  6. 保存数据

代码展示

“”"

爬取商品数据

🎯 文章素材、解答、源码、教程领取处:点击

“”"

导入模块

import pprint
from selenium import webdriver  # 从selenium里面导入webdriver的方法
# 导入时间模块
import time
import csv
word = input('请输入你想要获取商品: ')

创建一个文件保存 如果utf-8保存csv文件乱码 改成 utf-8-sig

f = open(f'{word}.csv', mode='a', encoding='utf-8', newline='')csv_writer = csv.DictWriter(f, fieldnames=['title','price','comment','shop_name','href',
])

写入表头

csv_writer.writeheader()  

如果把浏览器驱动放到和python安装目录下面, 可以不用指定驱动路径

executable_path=r’C:\01-Software-installation\Miniconda3\chromedriver.exe’

1. 打开浏览器

driver = webdriver.Chrome()  

实例化浏览器对象, 打开一个浏览器 原本是需要一个谷歌驱动 selenium 对象

2. 输入网址

3. 输入想要商品名字

driver.find_element_by_css_selector('#key').send_keys(word)

4. 点击搜索 查看商品数据

driver.find_element_by_css_selector('#search > div > div.form > button > i').click()  # 点击动作

5. 下滑网页, 让商品数据全部加载出来

"""执行页面滚动的操作"""  # javascript
def drop_down():for x in range(1, 12, 2):  # 1 3 5 7 9 11 在你不断的下拉过程中, 页面高度也会变的time.sleep(1)  # 延时操作 死等j = x / 9  # 1/9  3/9  5/9  9/9# document.documentElement.scrollTop  指定滚动条的位置# document.documentElement.scrollHeight 获取浏览器页面的最大高度js = 'document.documentElement.scrollTop = document.documentElement.scrollHeight * %f' % jdriver.execute_script(js)def get_shop_info():driver.implicitly_wait(10)  # 隐式等待, 等待网页数据加载 只要数据加载完了 就运行下面的程序drop_down()

6. 获取所有商品li标签

css语法 class 可以用小圆点代替, 加上类名字 可以直接定位到标签

    lis = driver.find_elements_by_css_selector('.gl-item')  

elements 提取多个标签 element 提取一个标签

一个一个提取列表里面元素, 用for循环遍历

    for li in lis:try:title = li.find_element_by_css_selector('a em').text.replace('\n', '')  # 标题price = li.find_element_by_css_selector('.p-price strong i').text  # 价格comment = li.find_element_by_css_selector('.p-commit strong a').text  # 评论数shop_name = li.find_element_by_css_selector('.p-shop span a').text  # 店铺名字href = li.find_element_by_css_selector('.p-name a').get_attribute('href')  # 详情页

7. 保存数据

            dit = {'title': title,'price': price,'comment': comment,'shop_name': shop_name,'href': href,}csv_writer.writerow(dit)print(title, price, comment, shop_name, href)# pprint.pprint(title)  格式化输出模块except:passdriver.find_element_by_css_selector('.pn-next').click()  # 点击下一页for page in range(1, 11):print(f'===========================正在采集第{page}页的数据内容===========================')get_shop_info()driver.quit()  # 采集完数据之后 自动关闭浏览器

“”"

爬取商品评论数据

🎯 文章素材、解答、源码、教程领取处:点击

“”"

import requests
import time
for page in range(10):time.sleep(2)

    response = requests.get(url=url, headers=headers)comments = '\n'.join([index['content'] for index in response.json()['comments']])

comments = [] 创建空列表

for index in response.json()['comments']: for循环遍历提取列表元素

a = index['content'] 根据键值对取值 提取评论数据

comments.append(a) 把评论数据 添加到列表里面

comments = '\n'.join(comments) 通过join的方法把comments 列表里面的元素 用\n合并成为一个字符串

    print(comments)with open('评论.txt', mode='a', encoding='utf-8') as f:f.write(comments)f.write('\n')

“”"

评论制作词云图

“”"

导入模块

结巴分词

import jieba    

词云图模块

import wordcloud    

读取文件 返回对象

f = open('评论.txt', encoding='utf-8')   

读取文本内容 返回字符串

text = f.read()  

通过jieba分词 对文本进行词语分割 返回的列表

text_list = jieba.lcut(text)   
print(text_list)

通过join方法把 文本词语列表合并成一个字符串

string = ' '.join(text_list)   

词云图配置

wc = wordcloud.WordCloud(width=800,height=800,background_color='white',scale=15,font_path='msyh.ttc'
)

写入词语内容

wc.generate(string)   

输出词云图

wc.to_file('1.png')  

尾语 💝

有更多建议或问题可以评论区或私信我哦!一起加油努力叭(ง •_•)ง

喜欢就关注一下博主,或点赞收藏评论一下我的文章叭!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/63755.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

chatgpt赋能python:Python简单数据采集教程:提高SEO排名的必要工具

Python简单数据采集教程:提高SEO排名的必要工具 在当前数字化时代下,数据已经成为商业流量和营销策略中至关重要的交易资源。因此,数据采集成为了提高SEO排名的必要手段之一。现在,Python由于其强大的数据处理能力被广泛应用于数…

利用 Python 爬虫采集 1688商品详情关键词数据-API

要利用 Python 爬虫采集 1688 商品详情数据,需要先了解 1688 网站的页面结构和数据请求方式。一般使用 requests 库请求网站的数据,使用 BeautifulSoup 库解析网页中的数据。 以下是一个简单的 Python 爬虫采集 1688 商品详情数据的示例代码&#xff1a…

英特尔淘汰迷你电脑,宣布放弃 NUC 业务!

整理 | 屠敏 出品 | CSDN(ID:CSDNnews) 相比造芯这件事,也许有很多人不知道全球知名半导体公司英特尔还在造电脑。 只是有些遗憾的是,据外媒 ServetheHome 报道,英特尔已经开始通知其生态系统的合作伙伴们&…

Web版和客户端哪种SQL工具更好?ChatGPT有话要说

2023年年初公司发布了一款Web版SQL工具,短期内就赢得了众多用户的喜爱和下载。不过,也有SQL用户在评论区中提出自己的观点,认为Web版工具都不可靠,甚至看见Web版工具就劝返… … 工具Web化逐渐成为一种趋势,比如&…

自动批量日文翻译工具,免费日文等小语种翻译互译工具

日文翻译工具具有日文、俄语、韩语、德语等多国小语种翻译,支持日文整篇文章翻译成中文等多种语种,长篇文章翻译后保留原文格式段落,并通过批量内容编辑处理,实现翻译后的文章敏感词删除、插图图片和同义词替换实现本地化翻译。 日…

谁说首富不懂技术!马斯克晒出Twitter2.0架构图

推荐阅读: 《重磅:Spring Boot 3.0 发布!》 《职场霸凌、潜规则,已经这么猖獗了吗。。》 出品 | OSC开源社区(ID:oschina2013) 近日,马斯克前往 Twitter 总部大楼和工程师团队进行了 code revie…

马斯克在中国的44小时!行程、会面与表态,释放出什么信号?

时隔3年,“自带流量”的美国特斯拉首席执行官马斯克再次到访中国,从公布的信息来看,可谓是行程满满。在中美关系似乎春寒料峭之际,马斯克的来华及表态极具象征意义。 马斯克:反对“脱钩断链” 5月30日下午15时30分左右…

TikTok广告投放指南(基础入门)

TikTok 在全球拥有超过5亿活跃用户,目前还属于一个红利期阶段,在 TikTok 号称开放广告投放后,发现先机的各方卖家纷纷涌入,俨然让它成为炙手可热的广告投放池。 TikTok拥有大量低价流量,人气赶超老牌社媒,再…

腾讯广点通广告投放-Web转化数据API自归因文档对接

关于自建H5落地页投放广告的流程总结 文档地址 Web转化数据API自归因文档 流程 转化归因配置 配置页面地址:https://ad.qq.com/atlas/22172840/tool/conversionspec选择网页转化新建网页转化API自归因上报 PS:关于点击监测链接的说明: …

TikTok运营指南:如何通过TikTok广告实现社媒引流?

短视频平台TikTok在海外可以说是越来越火了,很多做跨境电商的开始涌向TikTok这个平台去营销推广,所以如果你每天日思夜想怎样推出一个新产品,怎样以低成本引流客源和提供销售量,都可以利用 TikTok广告来实现社媒引流,目…

为什么选择TikTok广告?TikTok广告投放如何操作?TikTok广告教程

为什么选择TikTok广告? TikTok是发展最快的社交媒体平台,迄今为止下载量已超过20亿。尤其是在这个大流行的世界中,TikTok可以让人们通过创建自己的内容来寻找新颖有趣的方式彼此联系,从而获得新鲜的空气。 尽管TikTok并未发布受众…

开封抖音广告如何有效投放?

抖音广告投放现阶段已经是十分火爆的引流方法引流渠道了,为了更好开展获客,许多面向电脑端顾客的知名品牌,都是会在抖音里开展投放广告,那样,怎样来完成高效的投放广告呢,下列将采取推广流程、方式、价钱&a…

抖音广告投放的展现形式!抖音广告推广可以找谁合作?

抖音推广现在主要是信息流广告,抖音信息流广告靠精准传播、高转化率的特点成为移动广告主要承载模式,抖音短视频平台借助全面竖屏、交互形式原生的优势使得短视频广告的点击率相对传统图文广告提升6-8倍。 抖音效果广告曝光量大幅增长体现了媒介对流量更…

抖音的广告位在哪?抖音信息流广告样式?

抖音广告是属于巨量引擎广告平台的,巨量引擎广告平台包括:今日头条、西瓜视频、火山小视频、抖音四个媒体,投放时可以选择期中某一个媒体进行投放或全部投放,四个媒体的付费方式及价格都一样。 抖音广告形式有四种,分…

如何掌握TikTok广告投放技巧,玩转“TikTok+独立站”新模式?

导读:TikTok已经发展成为全球第六大社交媒体网络,这使其成为一个非常富饶的广告目的地。 跨境卖家如何在 TikTok 上投放广告?在“TikTok独立站”模式中,卖家在 TikTok ads 上投放电商广告,用户点击后将跳转到独立站落…

进来看tiktok如何变现和投放广告

昨天发完这个tiktok shop的注册教程,立刻有人来私信龙哥来问这个平台要怎么做。tiktok shop和传统电商平台不同,他的转化方式更多是基于短视频和直播机制下的。流量才是第一要素,所以今天龙哥就凭着自己对于tiktok shop的经验来给大家讲讲具体…

一文带你了解TikTok广告账户以及如何进行TikTok广告投放

Tiktok,现在对跨境电商商家们来说很可能就是一个很好的机会,因为TikTok渠道够新,流量够大。拥有稳定快速增长的用户、兼具短视频和直播两大电商流量体系的TikTok商家们肯定不容错过。 而这里面,我们可以利用红人,广告&…

抖音开屏广告和信息流广告相比较哪一种效果更好?

抖音身为现在短视频行业的黑马,成为了全球现在最流行的短视频平台,霸居App Store总榜榜首,而且抖音广告有着多种广告展现形式,适用于多种广告营销场景,抖音利用更短的营销路径,触达更高的传播效率&#xff…

陶哲轩晒出调教GPT-4聊天记录,点击领取大佬的研究助理!

点击下方卡片,关注“CVer”公众号 AI/CV重磅干货,第一时间送达 点击进入—>【多模态和Transformer】交流群 衡宇 萧箫 发自 凹非寺转载自:量子位(QbitAI) 鹅妹子嘤,天才数学家陶哲轩搞数学研究&#xff…

陶哲轩甩出调教GPT-4聊天记录,点击领取大佬的研究助理

量子位 | 公众号 QbitAI 鹅妹子嘤,天才数学家陶哲轩搞数学研究,已经离不开普通人手里的“数学菜鸡”GPT了! 就在他最新解决的一个数学难题下面,陶哲轩明确指出自己“使用了GPT-4”,后者给他提出了一种可行的解决方法…