「爬虫」18抓包自动爬取京东网商品信息(采用crawl模板)

1.项目需求:采用crawl模板自动爬取京东网商品信息。

2.项目分析

(1)打开京东主页(http://www.jd.com/)源码,查看某商品链接是否存在于主页源码中。若存在,下一步利用xpath表达式提取;若不存在,下一步需要进行抓包分析。

京东主页

(2)通过查看发现,主页商品链接存在于主页源码中,所以不需要进行抓包分析,直接提取。

主页部分源码

(3)点进某一类商品(http://shouji.jd.com/),对第二层页面源码进行分析,查看商品类别链接是否存在于页面源码中。

手机商品页面

(4)通过查看发现,某类商品类别链接存在于页面源码中。

手机商品页面源码

(5)点进某类商品的某一种,查看某个商品的链接是否存在于这层页面的源码中。

华为手机页面

(6)通过查看发现这一层页面源码包括该商品的链接。

华为手机页面部分源码

(7)下一层进入该商品页面https://item.jd.com/100005185603.html

华为Mate30手机页面

(8)分析所要爬取的信息是否在商品页面源码中,不存在则需要抓包分析。

3.项目实施步骤

(1)创建爬虫项目和文件。

scrapy startproject jingdong

scrapy genspider -t crawl jd jd.com

(2)获取商品链接:https://item.jd.com/100005185603.html

(3)通过商品链接、抓包结果分析所要提取商品的ID、标题、店铺名、店铺链接、价格的提取规则。

①商品ID:

thisurl = response.url

pat ='item.jd.com/(.*?).html'

thisid = re.compile(pat).findall(thisurl)

②商品标题:

title = response.xpath('/html/head/title/text()').extract()

③商品的店铺名:

shop = response.xpath('//div[@class="name"]/a/@title').extract()

④商品店铺链接:

shoplink = response.xpath('//div[@class="name"]/a/@href').extract()

⑤商品价格(抓包分析):

priceurl ='https://p.3.cn/prices/mgets?callback=jQuery&skuIds=J_'+str(thisid)

pricedata = urllib.request.urlopen(priceurl).read().decode('utf-8', 'ignore')

pricepat ='"p":"(.*?)"'

price = re.compile(pricepat).findall(pricedata)

(4)创建jingdong数据库和product数据表。

(5)编写jd.py文件。

jingdong/spiders/jd.py头文件
jingdong/spiders/jd.py

(6)运行爬虫。

scrapy crawl jd --nolog

(7)查看结果。

cmd中结果查看
数据库中结果查看
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1. 概述 本文主要介绍网络爬虫,采用的实现语言为Python,目的在于阐述网络爬虫的原理和实现,并且对目前常见的...
    Lemon_Home阅读 8,059评论 0 21
  • Scrapy终端是一个交互终端,我们可以在未启动spider的情况下尝试及调试代码,也可以用来测试XPath或CS...
    嗨学编程阅读 3,226评论 0 0
  • 这两天摸索了下scrapy,刚看文档的时候觉得有点生无可恋,scrapy框架个人还是觉得比较难懂的,需要学习的地方...
    Treehl阅读 11,005评论 7 10
  • 这是皖南的一座小城。一个50多万人口的县城。 我在这里待了七八年了,发生过太多的故事。甚至于我骑车出去经过一个路口...
    七月少女233阅读 1,558评论 0 0
  • 看到很多文章都在说迷茫,但一看年纪,基本上都是20出头的,像我这种30大几快奔40的还迷茫,是不是很丢脸。 当初很...
    木可2019阅读 1,445评论 0 0

友情链接更多精彩内容