AMZ123跨境卖家导航
拖动LOGO到书签栏,立即收藏AMZ123
首页跨境头条文章详情

【Python爬虫】:使用「Requests」+「bs4」写亚马逊爬虫

任佳伟
任佳伟
34171
2018-09-21 19:14
2018-09-21 19:14
34171


使用「Requests」+「bs4」写亚马逊爬虫


      终于我们还是讲到用「Python」来爬数据了。有些卖家就问了,为什么要用pytho?之前不是已经有一些Chrome插件或者其他简便的方法了吗?是的没错,但是他们都还达不到指哪儿爬哪儿、无惧目标网站封杀的水平呀。


作为已经成为最受欢迎的程序设计语言之一「Python」,它除了具有丰富和强大的库之外,还被赋予“胶水语言”的昵称,毕竟它能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。用它来写爬虫我们就是「站在巨人的肩膀上」,很多东西并不需要我们写,只需要库里拿过来用就行了。


话不多说,接下来小编就来叫大家如何操作!



环境搭建步骤:


一、安装Python:

在这里我们使用python 3.6.6版本,可在下面连接中直接下载。


Windows 版本:

https://www.python.org/ftp/python/3.6.6/python-3.6.6.exe

MacOS版本:

https://www.python.org/ftp/python/3.6.6/python-3.6.6-macosx10.9.pkg

其他版本请访问python官网:

https://www.python.org/downloads/release/python-366/


首先将「Add Python 3.6 to PATH」勾选上,点击「Customize installation」。


在将「Install for all users」勾选上,点击「install」。 


安装完成后,我们来检查一下Python是否安装成功,打开cmd命令,输入python回车,若显示类似下图,证明环Python安装成功。



二、安装PyCharm:

PyChram是一款提供Python开发环境的应用程序,可以帮助我们更好的编写、调试代码。


Windows版本: 

https://download.jetbrains.com/python/pycharm-professional-2018.2.exe

MacOS版本:

https://download.jetbrains.com/python/pycharm-professional-2018.2.dmg

具体安装步骤可参考:

https://www.cnblogs.com/dcpeng/p/9031405.html


下载完成后双击打开Pychram安装包,傻瓜化安装,基本一路next。



三、配置PyCharm:

打开pycharm,按下列图片完成配置。


四、创建新项目

以上就是PyCharm + Python3.6环境的搭建步骤。



编写第一个爬虫

爬虫技术需要循序渐进,今天我们先爬一些简单的东西来方便大家理解,为后期爬取亚马逊数据做准备。


  • 分析目标网站

今天我们选择的目标网站是【亚马逊美国站】https://www.amazon.com。首先我们使用Chrome浏览器打开该网站,搜索关键字「iphone」并分析该网站的网页结构。


分析后不难看出该网站目标数据处的网页结构:

id为s-results-list-atf的<ul>标签包含有数个<li>标签,每一个<li>标签包含了每件商品的一些信息。因此我们只需要请求网页数据,拿到id为s-results-list-atf的<ul>标签源码,然后自己解析、取出自己想要的数据即可。



一个爬虫主要分为四个部分:



一、请求数据:

首先我们安装python中的「Requests」。

在我们刚才创建的「black_Friday」中 输入:

import requests  # 导入requests
from bs4 import BeautifulSoup  # 从bs4中导入BeautifulSoup



光标停留在有红底波浪线的requests上按「Alt」+「Enter」然后选择「Install  package requests」等待模块安装完成后红色波浪线会消失。

以同样的方式安装「bs4」模块。

url = 'https://www.amazon.com/s/keywords=iphone'
response = requests.get(url)




二、拿到数据

「response」是一个变量名,用来保存目标网站返回给我们的数据。


可使用下面代码在控制台打印出目标网站返回的数据。

print(response.text)



三、解析数据

返回的数据看起来乱七八糟的怎么办?这么大一堆怎么找到想要的数据呢?这就要用到刚才导入的「bs4」模块了。Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库。它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式,Beautiful Soup会帮你节省数小时甚至数天的工作时间。


首先生成一个「BeautifulSoup」对象,我们命名为:response_soup:

response_soup = BeautifulSoup(response.text, 'html.parser')


其中「response.text」表示返回的数据,「html.parser」表示解析的方式。

result_list = response_soup.find('ul', id='s-results-list-atf').find_all("li")


在response_soup中找到id为s-results-list-atf的<ul>标签,    再在其中寻找所有的<li>标签。

for li in result_list:
   
print(li)
   
print("=" * 60)


可以用遍历的方式打印每个<li>标签,看是否与我们想要的数据一致。


1、ASIN

配合Chrome我们可以看出每个<li>标签的“data-asin”即为商品的「ASIN」。


asin = li['data-asin']

这样即可取出每件商品的「ASIN」。


2、Price


商品的价格是写在一个class为a-size-base a-color-base的<span>标签中。找出该标签,取出标签中的文本即可找出价格。

price = li.find('span', 'a-size-base a-color-base').text


3、Star

商品的star是写在一个class为a-icon-alt的<span>标签中。找出该标签,取出标签中的文本即可找出价格。


star = li.find('span','a-icon-alt').text

这样我们便爬到了一页中所有产品的Asin、Price、Star。



四、保存数据

使用csv库,将爬到的数据以csv格式保存下来。

import csv # 导入csv库


定义一个列表,用来保存每件商品的数据。

info_list = []


将Asin、Price、Star添加到列表中。

info_list.append(asin)
info_list.append(price)
info_list.append(star)


打开csv文件(若当前路径下没有改文件,将自动创建)。这里命名csv文件为“iPhone.csv”

csvFile = open('./iphone.csv', 'a', newline='')


创建写入对象、写入数据并关闭csv文件。

writer = csv.writer(csvFile)
writer.writerow(info_list)
csvFile.close()


完整代码:

import requests  # 导入requests
from bs4 import BeautifulSoup  # 从bs4中导入BeautifulSoup
import csv
url =
'https://www.amazon.com/s/keywords=iphone'
response = requests.get(url)
response_soup = BeautifulSoup(response.text
, 'html.parser')
result_list = response_soup.find(
'ul', id='s-results-list-atf').find_all("li")
for li in result_list:
    info_list = []
   
try:
        price = li.find(
'span', 'a-offscreen').text
   
except:
        price = li.find(
'span', 'a-size-base a-color-base').text
    asin = li[
'data-asin']
    star = li.find(
'span', 'a-icon-alt').text
   
print(asin)
   
print(price)
   
print(star)
    info_list.append(asin)
    info_list.append(price)
    info_list.append(star)
    csvFile =
open('./iphone.csv', 'a', newline='')
    writer = csv.writer(csvFile)
    writer.writerow(info_list)
    csvFile.close()
   
print("=" * 60)


运行效果:


以上就是本期的爬虫文章,谢谢阅读。


附 「Requests」&「bs4」的中文操作文档:

Requests:

http://docs.python-requests.org/zh_CN/latest/user/quickstart.html

bs4:

http://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/


更多精彩推荐,请关注我们


免责声明
本文链接:
本文经作者许可发布在AMZ123跨境头条,如有疑问,请联系客服。
最新热门报告作者标签
俄罗斯电商市场快速增长,综合平台优势大于独立站
AMZ123获悉,近日,Euromonitor、EMARKETER及Yakov and Partners发布了《俄罗斯电商市场发展现状》报告。报告基于2020-2024年的数据,对俄罗斯电商市场的发展趋势、综合电商平台与独立电商的竞争格局、各品类表现、未来市场预测进行了系统分析。一、俄罗斯电商趋势1.互联网渗透率增长放缓2020至2024年,俄罗斯互联网使用率从78.1%(约9560万用户)提升至85.5%(约1.04亿用户),四年间增加7.4%(新增约790万用户)。俄罗斯的互联网渗透率增速正在逐年放缓,预计到2029年互联网渗透率将达到89%(约1.08亿用户)。
越南加强进口商品监管,修订多项增值税和海关规则
AMZ123获悉,近日,越南海关公布了2026年对增值税(VAT)、特别消费税(SCT)及电子交易管理的多项修订,核心在于统一税制规则、扩大免税范围并加强跨境与电子化申报管理。此次调整既有减轻企业合规成本、扶持出口与产业链升级的内容,也伴随对部分消费品与临时进口再出口环节的更严监管,直接影响生产、进出口和跨境电商卖家。在增值税方面,新法律将此前零散的官方函件并入法律和配套法令,提升透明度并便于电子化处理。关键变化包括扩大增值税免税目录:列入政府清单的自然资源与矿产(无论原料还是加工品)在出口时被明确归为增值税免税项目。
TikTok Shop黑五复盘,一堆中国卖家晒出百万GMV
黑五复盘,TikTok卖家:“库存差点给我爆完了!”
存生命危险!美国CPSC紧急召回超1万件儿童手写板玩具
AMZ123获悉,近日,美国消费品安全委员会(CPSC)宣布,紧急召回亚马逊在售的KTEBO品牌的儿童书写板玩具,原因是该产品未能符合玩具类产品的强制性安全标准,电池仓固定螺丝无法保持牢固,可能导致纽扣电池外露。若儿童误吞纽扣电池,可能造成严重伤害、内部化学灼伤,甚至威胁生命。此次召回涉及KTEBO品牌的双件套书写平板玩具,召回数量约10,380件,产品提供四种颜色组合,包括粉色/蓝色、绿色/黄色、橙色/蓝色以及紫色/红色,并有8.5英寸与10英寸两种规格,每套配有与机身同色的手写笔。
AliExpress波兰11月增长显著,双十一活动日活用户增长37%
AMZ123获悉,近日,AliExpress的数据显示,平台11月的消费者参与度与卖家销售额大幅增长。今年11月11日至19日举行的AliExpress双十一购物节活动期间,波兰用户的参与度显著提升,日活跃用户数量同比增长37%。随着去年秋季AliExpress开放波兰本地卖家入驻,今年波兰本地卖家的参与度也明显提高,他们在此次双十一促销期间的GMV同比增长74%。从消费偏好来看,智能生活类产品持续吸引波兰消费者,智能家居与清洁设备成为销售榜单的主导品类。Dreame、ILIFE、Laresar等品牌的扫地机器人和自动吸尘设备进入最畅销产品行列,反映波兰家庭对智能化、便捷化生活方式的需求不断上升。
亚马逊印度计划投资127亿美元,推动本地云和AI基础设施建设
AMZ123获悉,近日,亚马逊宣布,将在2030年前进一步推动人工智能在印度的普及,计划投入127亿美元建设本地云和AI基础设施。亚马逊表示,这项长期投资将为超过1500万家中小企业带来AI应用能力,同时在2030年前为400万名公立学校学生提供AI素养课程与职业教育,提高数字技能普及度。亚马逊认为,AI正成为提升印度数字包容性的关键力量,能够突破语言、读写能力与访问渠道的限制,让更多个人与企业受益。在中小企业领域,亚马逊正在推出新一代AI工具,以降低经营门槛、简化业务操作并提升增长效率。
“黑五网一”DTC投放数据复盘,流量都去哪了?
2025 年“黑五网一”大战,终于落下帷幕。除了 GMV ,这场仗花了多少“弹药”,你算清楚了吗?流量场上的每一发子弹,都正中靶心了吗?偏离的原因找到了吗?除了看自己后台的数据,还要看清整个大盘的趋势——这决定了我们下一步该往哪儿走。基于 GoodsFox 监控的投放数据,我们有以下发现:服装、美妆的竞争力度只增不减3D 打印与机械键盘,从“小众圈层”跃升为热门赛道宠物经济的流量稳定,不靠爆点也能撑起大盘这些变化背后,都在重塑今年“黑五网一”的投放结构,我们先从流量基本盘讲起——尽管每年都有新风口,但从广告投放的绝对体量来看,传统大盘仍在支撑整体流量水位。
还在“索评”?亚马逊Review管理的红线与出路
亚马逊的评论管理格局是如何改变的?首先要明确一点:过去几年,亚马逊的Review生态系统发生了剧变,这对各类管理工具产生了深远影响。在买家端,那些专门用来标记“虚假评论”(或帮助买家鉴别真伪)的老一代工具正在失效甚至消失。不少买家就因为Fakespot在平台冲突、合规问题和数据接口变更的压力下关停而感到措手不及。Fakespot是一个分析电商产品评论真实性、帮助消费者识别虚假评价的平台。在卖家端,亚马逊的政策合规和风控机制变得更加严厉。这意味着Review的风险红线变了:以前那些“地毯式索评”或“送测(Giveaway)”的套路可能有效,但现在操作这些手段的封号风险极高。
亚马逊新功能,能救你一整条链接!
最近有卖家后台发现,亚马逊多了一个新功能,看起来不起眼,实则很关键——绩效提醒(Performance Notifications)。这个功能解决了我们运营过程中的一个老大难:链接出问题时能不能第一时间被提醒?以前我们发现Listing出状况,大多靠“事后诸葛”:出单突然断了,去查是不是被下架;关键词排名一夜暴跌,才想起去对比转化率;广告Acos拉爆、CTR异常,才知道图可能挂了;等你发现问题,可能已经晚了。这次,亚马逊终于“良心发现”,开始主动提醒你链接的数据异常了。这个新功能到底能干啥?说白了,它就是一个链接级别的数据异常预警系统。
宠物消费持续升温,亚马逊10款月销过万宠物产品推荐
AMZ123获悉,近日,亚马逊各类产品搜索量增长显著,以下10款产品在亚马逊上销量表现突出,深受消费者欢迎。1. 猫咪情绪舒缓喷雾预计销售额:139.84万美元/月销量:26,000+星级评分:4.4好评数量:12,694+图源:亚马逊产品描述:FELIWAY Optimum猫咪情绪舒缓喷雾的专利信息素复合物能显著减少猫咪的应激表现,包括喷尿、抓挠、恐惧反应、紧张冲突等。产品无药性、安全且不干扰人类与其他宠物,每个喷雾覆盖面积约 700 平方英尺。
“月薪3W”的运营因工作敷衍被辞,一线运营应具备哪些综合素质和竞争力?
匿名用户我的C位上个月公司招的一个运营离职了面试的的时候表现非常好据他所说,他上一份工作的综合薪资在3W左右面试的时候他的想法也是有的,所以我也给的比相对比较高的底薪。
还在“索评”?亚马逊Review管理的红线与出路
亚马逊的评论管理格局是如何改变的?首先要明确一点:过去几年,亚马逊的Review生态系统发生了剧变,这对各类管理工具产生了深远影响。在买家端,那些专门用来标记“虚假评论”(或帮助买家鉴别真伪)的老一代工具正在失效甚至消失。不少买家就因为Fakespot在平台冲突、合规问题和数据接口变更的压力下关停而感到措手不及。Fakespot是一个分析电商产品评论真实性、帮助消费者识别虚假评价的平台。在卖家端,亚马逊的政策合规和风控机制变得更加严厉。这意味着Review的风险红线变了:以前那些“地毯式索评”或“送测(Giveaway)”的套路可能有效,但现在操作这些手段的封号风险极高。
AMZ123星球专享丨12月第一周资讯汇总
亚马逊亚马逊的AI购物助手Rufus已新增识别虚假折扣的功能。用户可以查询商品在过去30天内的价格走势,系统将显示当前价格、促销价及历史折扣时段,并提供价格曲线图以辅助决策。市场研究机构Wells Fargo估算,亚马逊在美国服装市场的影响力持续扩大。亚马逊服装与鞋类品类在2024年销售额超过670亿美元,占据近13%的市场份额;预计在2025年销售额将超过720亿美元。亚马逊宣布,自12月15日起,对欧洲市场卖家收费进行大幅调整,重点下调服装与配饰等低价商品的推荐费,并在2026年继续对多个类别下调推荐费与履约费,以应对来自Shein、Temu等低价平台的竞争。
TikTok Shop黑五复盘,一堆中国卖家晒出百万GMV
黑五复盘,TikTok卖家:“库存差点给我爆完了!”
存生命危险!美国CPSC紧急召回超1万件儿童手写板玩具
AMZ123获悉,近日,美国消费品安全委员会(CPSC)宣布,紧急召回亚马逊在售的KTEBO品牌的儿童书写板玩具,原因是该产品未能符合玩具类产品的强制性安全标准,电池仓固定螺丝无法保持牢固,可能导致纽扣电池外露。若儿童误吞纽扣电池,可能造成严重伤害、内部化学灼伤,甚至威胁生命。此次召回涉及KTEBO品牌的双件套书写平板玩具,召回数量约10,380件,产品提供四种颜色组合,包括粉色/蓝色、绿色/黄色、橙色/蓝色以及紫色/红色,并有8.5英寸与10英寸两种规格,每套配有与机身同色的手写笔。
《亚马逊生活日用品类攻略手册》PDF下载
作为日常生活不可或缺的重要组成,生活百货品类覆盖范围广泛,包括家居用品、家具、车用配件、户外装备、园艺 工具、运动器材、家装用品、厨房、玩具以及宠物用品等众多领域。这类产品不仅是满足基本生活所需,更体现了人们对美好生活的向往和追求。
《掘金泰国-市场洞察与战略机遇报告2025》PDF下载
随着全球经济一体化的加速,泰国作为东盟的核心枢纽,凭借其独特的地缘优势庞大的消费市场以及持续优化的营商环境,成为众多企业战略布局的重要目标。本报告深入剖析泰国市场的政策红利、消费趋势、产业机遇以及合规挑战,旨在为有志于开拓泰国市场的中国企业提供行动指南,助力企业在东盟这片充满活力的土地上把握机遇、应对挑战、!实现可持续发展。
《2025欧美假日购物季营销指南》PDF下载
2025年美国假日购物季零售额预计同比仅增长1.2%,总销售额约1.359万亿美元,虽仍保持正增长,但为2009年以来最低增速,市场正在步入低增长的新常态。
《2025年跨境电商东南亚市场进入战略白皮书》PDF下载
东南亚电商,正以惊人的速度复刻中国电商高速增长的黄金时代。2024年东南亚电商GMV达到1284亿美元,短短5年涨幅超过3倍。全球电商2024年GMV增幅最快的十大市场中,东南亚独占四席。东南亚是拥有约6.7亿人口的广阔市场,在现今全球关税的不确定性大格局下,因其电商基建完善,利好的贸易政策,和更高的年轻人口占比,成为跨境卖家生意拓张焦点之一。
《2025年TikTok Shop玩具品类行业报告(欧美站)》PDF下载
分析TikTok Shop美国市场、英国市场、西班牙市场、墨西哥市场等主流市场点短视频及直播电商数据,选取TikTok与玩具爱好品类相关的内容进行分析报告。
《2025 洗护品类趋势与创新洞察》PDF下载
本报告独特价值:将消费者的“行为结果”据),揭示消费者深层心理动机、并能精准预判未来增长机会
《亚马逊双轨增长指南》PDF下载
亚马逊以“以客户为中心”为核心理念,通过整合B2B与B2C的全渠道服务,帮助卖家实现“一店双拓”-- 一次上架,同步触达个人消费者与企业买家,获得双重收益。同时,基于Direct to Buyer(直接触达买家)的模式,更能有效减少中间环节,提升利润空间与品牌掌控力。
《亚马逊全球线上商采趋势与区域洞察》PDF下载
随着全球企业数字化转型的深入推进,B2B商采有望成为下一个万亿级别的蓝海市场然而,中国卖家在开拓海外企业商采市场时往往面临着一个关键挑战:难以准确把握海外企业买家的商采行为和决策模式。这种认知偏差不仅影响了产品开发方向,也制约了市场拓展策略的制定。
AMZ123选品观察员
选品推荐及选品技巧分享。
侃侃跨境那些事儿
不侃废话,挣钱要紧!
北美电商资讯
AMZ123旗下北美跨境电商新闻栏目,专注北美跨境电商热点资讯,为广大卖家提供北美跨境电商最新动态、最热新闻。
AMZ123卖家导航
这个人很懒,还没有自我介绍
跨境数据中心
聚合海量跨境数据,输出跨境研究智慧。
跨境电商赢商荟
跨境电商行业唯一一家一年365天不断更的媒体!
欧洲电商资讯
AMZ123旗下欧洲跨境电商新闻栏目,专注欧洲跨境电商热点资讯,为广大卖家提供欧洲跨境电商最新动态、最热新闻。
亚马逊资讯
AMZ123旗下亚马逊资讯发布平台,专注亚马逊全球热点事件,为广大卖家提供亚马逊最新动态、最热新闻。
首页
跨境头条
文章详情
【Python爬虫】:使用「Requests」+「bs4」写亚马逊爬虫
任佳伟
2018-09-21 19:14
34171


使用「Requests」+「bs4」写亚马逊爬虫


      终于我们还是讲到用「Python」来爬数据了。有些卖家就问了,为什么要用pytho?之前不是已经有一些Chrome插件或者其他简便的方法了吗?是的没错,但是他们都还达不到指哪儿爬哪儿、无惧目标网站封杀的水平呀。


作为已经成为最受欢迎的程序设计语言之一「Python」,它除了具有丰富和强大的库之外,还被赋予“胶水语言”的昵称,毕竟它能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。用它来写爬虫我们就是「站在巨人的肩膀上」,很多东西并不需要我们写,只需要库里拿过来用就行了。


话不多说,接下来小编就来叫大家如何操作!



环境搭建步骤:


一、安装Python:

在这里我们使用python 3.6.6版本,可在下面连接中直接下载。


Windows 版本:

https://www.python.org/ftp/python/3.6.6/python-3.6.6.exe

MacOS版本:

https://www.python.org/ftp/python/3.6.6/python-3.6.6-macosx10.9.pkg

其他版本请访问python官网:

https://www.python.org/downloads/release/python-366/


首先将「Add Python 3.6 to PATH」勾选上,点击「Customize installation」。


在将「Install for all users」勾选上,点击「install」。 


安装完成后,我们来检查一下Python是否安装成功,打开cmd命令,输入python回车,若显示类似下图,证明环Python安装成功。



二、安装PyCharm:

PyChram是一款提供Python开发环境的应用程序,可以帮助我们更好的编写、调试代码。


Windows版本: 

https://download.jetbrains.com/python/pycharm-professional-2018.2.exe

MacOS版本:

https://download.jetbrains.com/python/pycharm-professional-2018.2.dmg

具体安装步骤可参考:

https://www.cnblogs.com/dcpeng/p/9031405.html


下载完成后双击打开Pychram安装包,傻瓜化安装,基本一路next。



三、配置PyCharm:

打开pycharm,按下列图片完成配置。


四、创建新项目

以上就是PyCharm + Python3.6环境的搭建步骤。



编写第一个爬虫

爬虫技术需要循序渐进,今天我们先爬一些简单的东西来方便大家理解,为后期爬取亚马逊数据做准备。


  • 分析目标网站

今天我们选择的目标网站是【亚马逊美国站】https://www.amazon.com。首先我们使用Chrome浏览器打开该网站,搜索关键字「iphone」并分析该网站的网页结构。


分析后不难看出该网站目标数据处的网页结构:

id为s-results-list-atf的<ul>标签包含有数个<li>标签,每一个<li>标签包含了每件商品的一些信息。因此我们只需要请求网页数据,拿到id为s-results-list-atf的<ul>标签源码,然后自己解析、取出自己想要的数据即可。



一个爬虫主要分为四个部分:



一、请求数据:

首先我们安装python中的「Requests」。

在我们刚才创建的「black_Friday」中 输入:

import requests  # 导入requests
from bs4 import BeautifulSoup  # 从bs4中导入BeautifulSoup



光标停留在有红底波浪线的requests上按「Alt」+「Enter」然后选择「Install  package requests」等待模块安装完成后红色波浪线会消失。

以同样的方式安装「bs4」模块。

url = 'https://www.amazon.com/s/keywords=iphone'
response = requests.get(url)




二、拿到数据

「response」是一个变量名,用来保存目标网站返回给我们的数据。


可使用下面代码在控制台打印出目标网站返回的数据。

print(response.text)



三、解析数据

返回的数据看起来乱七八糟的怎么办?这么大一堆怎么找到想要的数据呢?这就要用到刚才导入的「bs4」模块了。Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库。它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式,Beautiful Soup会帮你节省数小时甚至数天的工作时间。


首先生成一个「BeautifulSoup」对象,我们命名为:response_soup:

response_soup = BeautifulSoup(response.text, 'html.parser')


其中「response.text」表示返回的数据,「html.parser」表示解析的方式。

result_list = response_soup.find('ul', id='s-results-list-atf').find_all("li")


在response_soup中找到id为s-results-list-atf的<ul>标签,    再在其中寻找所有的<li>标签。

for li in result_list:
   
print(li)
   
print("=" * 60)


可以用遍历的方式打印每个<li>标签,看是否与我们想要的数据一致。


1、ASIN

配合Chrome我们可以看出每个<li>标签的“data-asin”即为商品的「ASIN」。


asin = li['data-asin']

这样即可取出每件商品的「ASIN」。


2、Price


商品的价格是写在一个class为a-size-base a-color-base的<span>标签中。找出该标签,取出标签中的文本即可找出价格。

price = li.find('span', 'a-size-base a-color-base').text


3、Star

商品的star是写在一个class为a-icon-alt的<span>标签中。找出该标签,取出标签中的文本即可找出价格。


star = li.find('span','a-icon-alt').text

这样我们便爬到了一页中所有产品的Asin、Price、Star。



四、保存数据

使用csv库,将爬到的数据以csv格式保存下来。

import csv # 导入csv库


定义一个列表,用来保存每件商品的数据。

info_list = []


将Asin、Price、Star添加到列表中。

info_list.append(asin)
info_list.append(price)
info_list.append(star)


打开csv文件(若当前路径下没有改文件,将自动创建)。这里命名csv文件为“iPhone.csv”

csvFile = open('./iphone.csv', 'a', newline='')


创建写入对象、写入数据并关闭csv文件。

writer = csv.writer(csvFile)
writer.writerow(info_list)
csvFile.close()


完整代码:

import requests  # 导入requests
from bs4 import BeautifulSoup  # 从bs4中导入BeautifulSoup
import csv
url =
'https://www.amazon.com/s/keywords=iphone'
response = requests.get(url)
response_soup = BeautifulSoup(response.text
, 'html.parser')
result_list = response_soup.find(
'ul', id='s-results-list-atf').find_all("li")
for li in result_list:
    info_list = []
   
try:
        price = li.find(
'span', 'a-offscreen').text
   
except:
        price = li.find(
'span', 'a-size-base a-color-base').text
    asin = li[
'data-asin']
    star = li.find(
'span', 'a-icon-alt').text
   
print(asin)
   
print(price)
   
print(star)
    info_list.append(asin)
    info_list.append(price)
    info_list.append(star)
    csvFile =
open('./iphone.csv', 'a', newline='')
    writer = csv.writer(csvFile)
    writer.writerow(info_list)
    csvFile.close()
   
print("=" * 60)


运行效果:


以上就是本期的爬虫文章,谢谢阅读。


附 「Requests」&「bs4」的中文操作文档:

Requests:

http://docs.python-requests.org/zh_CN/latest/user/quickstart.html

bs4:

http://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/


更多精彩推荐,请关注我们


咨询
官方微信群
官方客服

扫码添加,立即咨询

加群
官方微信群
官方微信群

扫码添加,拉你进群

更多
订阅号服务号跨境资讯
二维码

为你推送和解读最前沿、最有料的跨境电商资讯

二维码

90% 亚马逊卖家都在关注的微信公众号

二维码

精选今日跨境电商头条资讯

回顶部