news 2026/3/20 1:55:49

低代码爬虫利器结合Python Selenium,自动采集商品数据

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
低代码爬虫利器结合Python Selenium,自动采集商品数据

说实话,现在跨境电商竞争之激烈,获客之难,早已不是搭个台子就能唱戏的阶段,需要各种竞品数据、用户评价数据监测分析,及时掌握哪些产品卖的好,卖的好的产品标题怎么写、用户情感反馈等等,相当的繁琐。

这个过程看似简单,但仅是数据采集就难倒一大批人,因为像Amazon、Tiktok、eBay、Shopee等反爬机制非常严格,已经从传统的IP识别升级到​​行为分析​​和​​动态对抗,​​像是浏览器指纹、验证码(CAPTCHA)、动态加密、异步加载等,一般简单的爬虫技术基本不可能抓取到稳定的电商数据。


所以开发者们需要进行技术伪装、动态IP设置和自动化工具等方法,去测试和调整不同平台的规则,但又必须要保证在法律允许的范围之内进行数据采集。

什么是法律允许的范围呢?首先只能抓取互联网上公开的非隐私数据,不要去破解后台加密数据,也不可以获取用户隐私数据。其次只能在网站合理的承受范围发送http请求,不能对目标网站造成破坏。否则,可能会面临法律风险。

这次我准备结合Python selenium + bright data的组合来采集某跨境电商网站上的智能手机商品数据,并结合AI搭建一个电商商品分析系统,用于监测竞品数据。

https://get.brightdata.com/webscra

当然这个仅供参考学习使用。

1、bright data数据采集技术解读

bright data提供包含网页抓取API、网页解锁器API、网页抓取浏览器、SERP API等在内的自动化产品。这些产品能解决什么问题呢?像你在爬虫过程中遇到的人机验证、验证码、动态页面、浏览器指纹验证等问题,这些都有针对性的解决技术。

就拿这次我用的Scraping Browser来举例,Scraping Browser是数据采集浏览器的意思,它是bright data提供的云浏览器,是有图形界面的有头浏览器,托管在亮数据平台上。它的工作原理和普通自动化浏览器一样,能通过Selenium、Playwright等自动化API来操作采集数据,适合交互频繁的动态网页,执行各种点击、加载等操作。

但是Scraping Browser封装了代理和网站解锁能力,能进行各种高级爬虫操作,比如:CAPTCHA 识别、浏览器指纹、自动重试、请求头选择、处理 cookies、JavaScript 渲染等,对于反爬机制复杂的网站非常适用。

2、使用Scraping Browser采集商品数据

首先这次测试的采集目标是某跨境电商网站的智能手机商品数据,基于Scraping Browser服务,使用Python Selenium库来请求和解析数据,Selenium是主流的浏览器自动化工具,也支持其API接口,操作起来比较方便。

第一步:创建通道

打开bright data,然后打开后台控制面板界面,找到“浏览器API“,创建新的通道。

第二步:设置“浏览器API“相关参数

给新通道起一个任务名称,比如ecommerce_task

接着勾选CAPTCHA 解决器,它能帮你自动识别和解锁各种验证码,非常省心。

最后点击添加,即创建了一个新通道ecommerce_task。

新通道会有用户名、密码,以及Selenium对应的端口,要记住和保密。

在操作平台里,你能找示例代码,比如这次用到的Selenium,我们就直接改改示例请求代码用于抓取商品数据。

第三步:编写脚本,采集数据

这次直接抓取某跨境电商网站搜索页的智能手机商品,搜索关键词为:smart phone,采集的字段有:商品名称(name)、商品价格(price)、商品来源地(location),因为是示例爬虫,所以只选重要的的几个字段。

https://get.brightdata.com/webscra

采集好数据后,保存到本地CSV文件中,用于后续分析。

示例代码如下:

# 本案例仅用于技术研究,遵守《网络安全法》第27条与目标网站robots.txt协议,采样频率控制在5次/分钟以下,单日采集量不超过1000条fromselenium.webdriverimportRemote,ChromeOptionsfromselenium.webdriver.chromium.remote_connectionimportChromiumRemoteConnectionfromselenium.webdriver.common.byimportByfromselenium.webdriver.support.uiimportWebDriverWaitfromselenium.webdriver.supportimportexpected_conditionsasECimporttimeimportcsv# ==== 请替换为你的 Bright Data 授权信息 ====AUTH='你的账号接口地址'SBR_WEBDRIVER=f'https://{AUTH}@brd.superproxy.io:9515'defmain():print('正在连接Scraping Browser...')# 建立远程连接sbr_connection=ChromiumRemoteConnection(SBR_WEBDRIVER,'goog','chrome')opts=ChromeOptions()# 可选:开启无头模式# opts.add_argument('--headless')withRemote(sbr_connection,options=opts)asdriver:print('已连接! 导航到Shopee...')# 1)打开 Shopee 手机搜索页url='https://shopee.sg/search?keyword=smart%20phone'driver.get(url)# 2)等待商品列表渲染完成:等待每个“商品卡片”出现wait=WebDriverWait(driver,80)item_selector='li[data-sqe="item"]'wait.until(EC.presence_of_all_elements_located((By.CSS_SELECTOR,item_selector)))# 3)滚动以加载更多(如果需要懒加载,可根据实际情况调整)driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")time.sleep(2)# 4)再一次抓取商品卡片items=driver.find_elements(By.CSS_SELECTOR,item_selector)print(f'定位到{len(items)}个商品卡片,开始抓取…')# 5)准备存储结果results=[]foritminitems:try:# 商品名称name=itm.find_element(By.CSS_SELECTOR,'div.line-clamp-2').text.strip()# 价格(带币种符号)price=itm.find_element(By.CSS_SELECTOR,'span.font-medium.text-base\\/5').text.strip()# 商品来源地location=itm.find_element(By.CSS_SELECTOR,'span.ml-\[3px\]').text.strip()exceptExceptionase:# 若某个字段缺失则跳过print(f'⚠️ 解析失败:{e}')continueresults.append({'name':name,'price':price,'location':location})# 6)输出到 CSVout_file='shopee_mobile_phones.csv'keys=['name','price','location']withopen(out_file,'w',newline='',encoding='utf-8-sig')asf:writer=csv.DictWriter(f,fieldnames=keys)writer.writeheader()forrowinresults:writer.writerow(row)print(f'完成:共抓取{len(results)}条,已保存至{out_file}')if__name__=='__main__':main()

最终采集数据保存到CSV文件中,部分数据如下:

注:name代表商品名称,price是售价(新加坡元)、location是来源地。

该跨境电商网站是对爬虫监测比较严的平台,会要求各种验证,Scraping Browser都能轻松解锁,而且搜索结果页异步加载,部分操作(如翻页)需模拟用户点击,也能一并解决。

3、使用AI搭建跨境电商监测分析系统

采集好商品数据后,接下来把活交给AI,既可以让它分析商品数据给出合理化建议,也可以搭建商品监测分析系统,将采集和数据分析集成到一个平台里。

比如某跨境电商网站手机商品名称的分析优化,把刚爬取的csv数据提交给AI,输入提示:

附件是手机商品数据,包含名称、价格、来源地,请你分析商品名称内容、结构、形式、优化建议等等,输出分析报告。

AI会自动出具一份分析报告。

有核心要素提取:


也有问题和优化建议:

可以看到AI给出的建议非常详细且具有可参考性。

咱们再将这种功能集成到平台里,让AI设计一个采集和分析数据于一体的商品分析平台。

功能如下:

  • 1、数据采集模块,集成bright data数据自动化采集功能,自动从shopee采集数据
  • 2、竞品动态跟踪模块,自动跟踪某几个核心竞品商品的信息,比如销量、价格、标题等
  • 3、价格趋势预测模块,自动监测某品类价格走势,基于AI智能化定义价格
  • 4、商品名称优化模块,自动监测分析热门商品名称,基于AI分析优化结果

基于采集到的智能手机商品数据示例,实现的效果如下。

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

不同小波基分解层数的小波变换信号去噪声附Matlab代码

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

作者头像 李华
网站建设 2026/3/16 4:17:04

看完就会,从抓包到接口测试的全过程解析

一、为什么抓包 1、从功能测试角度 通过抓包查看隐藏字段 Web 表单中会有很多隐藏的字段,这些隐藏字段一般都有一些特殊的用途,比如收集用户的数据,预防 CRSF 攻击,防网络爬虫,以及一些其他用途。这些隐藏字段在界面…

作者头像 李华
网站建设 2026/3/16 4:17:00

接口测试用例怎么写?一文1600字教你写一个优秀的接口测试的测试用例

一、用例设计1 1、接口测试概念 接口测试:测试系统间接口的一种测试,测试的对象主要是接口,主要是测试外部系统与所测系统之间以及内部系统之间的交互点 2、接口测试方法 a、可以通过开发脚本代码进行测试 b、可以通过开源免费的接口调用…

作者头像 李华
网站建设 2026/3/16 4:17:02

LoadRunner技巧之思考时间设置

用户访问某个网站或软件,一般不会不停地做个各种操作,例如一次查询,用户需要时间查看查询的结果是否是自己想要的。例如一次订单提交,用户需要时间核对自己填写的信息是否正确等。 也就是说用户在做某些操作时,是会有…

作者头像 李华
网站建设 2026/3/15 9:30:37

AI智能体是否胜任任务?判断何时委派工作的3种方法

你可能已经听说过这样的观点:AI智能体充当人类同事的"协作者",实际上成为了劳动力的延伸。挑战在于解码它们最适合执行什么工作——这并不是一个简单的问题。 有些任务适合自动化,而另一些则更适合手动处理。但许多任务处于灰色地带…

作者头像 李华
网站建设 2026/3/15 8:59:37

LoadRunner性能测试基本步骤

前言 本文旨在指导初学者使用LoadRunner进行基础的性能测试。 我们在接到一个性能测试任务的时候,需要从以下几点考虑:我们的测试对象是什么,测试要求是什么,测试环境怎么部署的,业务规模如何,哪些业务点是…

作者头像 李华