【开源】scrapy爬取亚马逊商品信息

本文介绍了如何利用开源Python爬虫框架Scrapy从亚马逊网站抓取商品信息。通过详细讲解items.py的配置和Spider的实现,展示了整个爬取过程。在运行结果部分,展示了成功获取的数据,并讨论了项目的后续发展方向。
摘要由CSDN通过智能技术生成

一、前言

        在此声明,爬取亚马逊商品仅为学习,若用于商业用途,后果自负。
       最近在学python,听说python有个非常牛逼的爬虫框架,借此学习下。虽然以前用JAVA也写过爬虫,不过实现的都是一些简易的功能,比如我开发的一个微信公众号(叫“妈妈再也不担心”,大家可以关注下 大笑),里面比如的NBA赛事查询功能,热播电影查询等。这次我先拿亚马逊做测试,原来想爬取京东的商品,可一看京东网页源代码,简直疯了,太复杂了,它的商品评论是由JSONP生成。但是据我分析,其callback回调函数的名字是根据某种随机算法生成的,所以没辙,望大家告知。所以这次先在亚马逊上小试牛刀。源码我放到了 github上,大家可以去fork。

二、items.py

       scrapy项目的具体项目搭建我就不讲了,大家可以自行百度,CSDN上有个专栏讲的非常不错,这里推荐下
Scrapy是一个强大的Python爬虫框架,可以用来爬取各种网站的信息。下面是一个Scrapy爬取京东商品信息的简单示例: 1. 创建Scrapy项目 在命令行中输入以下命令来创建一个Scrapy项目: ``` scrapy startproject jingdong ``` 这将创建一个名为“jingdong”的Scrapy项目。 2. 创建爬虫 在命令行中输入以下命令来创建一个爬虫: ``` scrapy genspider jingdong_spider jd.com ``` 这将在项目中创建一个名为“jingdong_spider”的爬虫,用于爬取jd.com网站上的商品信息。 3. 编写爬虫代码 打开“jingdong_spider.py”文件,添加以下代码: ```python import scrapy class JingdongSpider(scrapy.Spider): name = "jingdong" allowed_domains = ["jd.com"] start_urls = [ "https://list.jd.com/list.html?cat=9987,653,655" ] def parse(self, response): for sel in response.xpath('//ul[@class="gl-warp clearfix"]/li'): item = {} item['name'] = sel.xpath('div[@class="gl-i-wrap"]/div[@class="p-name"]/a/em/text()').extract()[0] item['price'] = sel.xpath('div[@class="gl-i-wrap"]/div[@class="p-price"]/strong/i/text()').extract()[0] yield item ``` 这个简单的爬虫代码将在“https://list.jd.com/list.html?cat=9987,653,655”页面中爬取商品名称和价格,并将它们保存到一个字典中。 4. 运行爬虫 在命令行中输入以下命令来运行爬虫: ``` scrapy crawl jingdong ``` Scrapy将开始爬取京东商品信息,并将结果打印到命令行中。 这只是一个简单的示例,你可以根据自己的需求修改代码以及爬取其他网站的信息。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值