news 2026/10/15 8:42:50

亚马逊电商与python结合(四)Selenium

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
亚马逊电商与python结合(四)Selenium

理解三个工具的分工
把它们想象成一个数据处理团队:

工具 角色 主要工作
Pandas 数据分析员 筛选、计算、汇总数据
openpyxl Excel 助手 写入单元格、调整格式、保存工作簿
Selenium 浏览器操作员 打开网页、点击元素、读取网页内容

例如,你想研究 Amazon 产品的价格变化:
Selenium 可以在适当情况下打开网页并读取公开显示的信息。
Pandas 可以整理价格数据、计算均价和变化幅度。
openpyxl 可以将分析结果输出成格式整齐的 Excel 报表。

如果网站提供官方 API 或可下载报表,通常优先考虑这些更稳定的方式;不是所有数据获取任务都需要 Selenium。

第 1步:安装 Selenium
在VS Code 终端中输入

python-m pip install selenium

按 Enter,等待安装完成。

Selenium 4 通常可以通过 Selenium Manager 自动处理兼容的浏览器驱动,因此先不用手动下载 ChromeDriver。

第 2 步:检查 Selenium 版本
在 VS Code 的 Jupyter Notebook 里,新建一个代码单元格,运行:

importseleniumprint(selenium.__version__)

import selenium:把 Selenium 导入当前 Notebook。
print(selenium.version):显示安装的版本号。

第 3 步:用 Selenium 打开网页
这一步我们让 Python 模拟人类操作浏览器:启动 Chrome,然后打开 Selenium 官方提供的练习网页。暂时不抓取 Amazon,先把基本操作跑通。

fromseleniumimportwebdriver driver=webdriver.Chrome()driver.get("https://www.selenium.dev/selenium/web/web-form.html")

from selenium import webdriver:导入浏览器控制工具。
webdriver.Chrome():启动 Chrome 浏览器。可以把它理解为叫来一个浏览器操作员。
driver.get(…):让浏览器访问指定网址。以后换网址,只需要修改引号里的链接。

程序一直在运行,但没有弹出Chorme

1.检查是否安装了chorme
2.在终端输入检查环境

python-c"import shutil; print(shutil.which('chrome')); print(shutil.which('chromedriver'))"

检查 Chrome 是否安装在默认位置

```powershell Test-Path"C:\Program Files\Google\Chrome\Application\chrome.exe"Test-Path"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"Test-Path"$env:LOCALAPPDATA\Google\Chrome\Application\chrome.exe"
第一行是 True,说明它安装在: C:\Program Files\Google\Chrome\Application\chrome.exe 检查 Selenium 能否启动 Chrome 先确认 Jupyter 里之前一直运行的代码已经停止。然后在 VS Code 的终端中运行下面这条命令。 ```powershell python -c "from selenium import webdriver; d=webdriver.Chrome(); print('Chrome启动成功'); d.quit()"

打开网页

fromseleniumimportwebdriver driver=webdriver.Chrome()driver.get("https://www.selenium.dev/selenium/web/web-form.html")print(driver.title)


Selenium 可以模拟点击、输入、翻页等浏览器操作。

第 4 步:读取网页信息
刚才你让 Selenium 打开了网页。接下来,我们让它像人一样,看看网页的标题,并读取页面上的文字。

print("网页标题:",driver.title)text=driver.find_element("tag name","h1").textprint("页面标题文字:",text)

driver.title:读取浏览器标签页的网页标题。
find_element(…):在网页里寻找一个指定元素。
“tag name”, “h1”:寻找 HTML 中的一级标题,就像找到网页上最大号的标题。
.text:取出这个元素里显示的文字。
注意:这里的 driver 是刚才启动浏览器时创建的变量。如果你重启过 Notebook 内核,需要重新执行启动浏览器的代码。

是h1,数字1

第 5 步:把抓取结果整理成表格
实际工作中,我们通常不会只抓取一个标题,而是希望把抓到的信息整理成结构化数据,方便后续用 Pandas 分析,或者用 openpyxl 写入 Excel。
我们先把刚才读取的网页信息整理成一张小表格。
i

mport pandasaspd data={"项目":["网页标题","页面标题文字"],"抓取结果":[driver.title,text]}df=pd.DataFrame(data)print(df)

data:把抓取结果装进两个字段里,像先把资料放进两个文件夹。
pd.DataFrame(data):把资料整理成表格。
print(df):显示整理后的表格。

Selenium:采集员
打开网页、点击按钮、读取网页文字。

Pandas:分析员
清洗数据、计算指标、筛选异常。

openpyxl:Excel 助手
把结果写入 Excel,设置格式并保存文件。
以后做 Amazon 数据分析时,可以把这条流程理解成:
网页采集 → 数据整理 → 指标分析 → 导出 Excel。
当然,真实的 Amazon 页面可能有登录、反爬限制或访问权限,不能假设 Selenium 可以直接抓取所有数据。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/15 8:42:41

不拆机不改系统:用HDMI-CEC与功耗信号让PS5联动全屋智能家居

你有没有遇到过这种傍晚:忙完一天,坐进沙发,打开游戏机,客厅灯却还亮着刺眼的吊灯,窗帘没拉,路灯直直照进来,音响还停在蓝牙配对模式,风扇呼呼地吹。于是你先扔下手柄去关灯、拉帘、…

作者头像 李华
网站建设 2026/10/15 8:42:25

素材自动变大纲,大纲一键出片:PPT效率优化实战指南

上周五晚上十点,我接到一个临时汇报任务,第二天早上九点要用。手边的素材只有一份会议纪要、几段群聊截图、一篇公众号文章,外加一个装着12页PDF报告的压缩包。换两年前,这个局面基本等于熬夜到凌晨两三点:先读材料&am…

作者头像 李华
网站建设 2026/10/15 8:42:17

空天地遥感数据识别与计算:0基础入门与15个案例实战

很多人第一次听到“空天地遥感数据”这个说法,第一反应通常是:这到底是什么?其实拆开来看,就是“空、天、地”三个维度获取的遥感数据——卫星在天上拍,飞机、无人机在空中拍,地面传感器和手持设备在地表测…

作者头像 李华
网站建设 2026/10/15 8:42:09

自建游戏盒子实战:用旧主机打造媲美Steam的游戏库管理平台

说个真事,我这些年折腾数码设备的次数不算少,但真正让我觉得“值回票价”的,是一个不怎么起眼的项目:自建游戏盒子。起因很简单,Steam库里的游戏越来越多,GOG、Epic、模拟器里的老伙计们各占一摊&#xff0…

作者头像 李华
网站建设 2026/10/15 8:41:56

AnyPS5跨端兼容实战:DualSense手柄映射与串流协议深度解析

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕 PlayStation 5 生态做"泛化接入"或"跨端兼容"的项目。为什么这么判…

作者头像 李华
网站建设 2026/10/15 8:41:55

三套可落地咨询方法论实战包:麦肯锡MECE+波士顿矩阵+埃森哲敏捷

简介:本资源是一份面向企业管理者、战略规划人员及咨询从业者的专业方法论解析资料,系统拆解麦肯锡(结构化问题解决与MECE原则)、波士顿咨询(波士顿矩阵与创新增长模型)和埃森哲(数字化转型四维…

作者头像 李华