位置: 编程技术 - 正文
推荐整理分享python爬虫实战之爬取京东商城实例教程(python爬虫全套教程),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:python爬虫例,python,爬虫,python 爬虫技术,python爬虫详解,python爬虫详解,python 爬虫,python爬虫100例,pythone爬虫,内容如对您有帮助,希望把文章链接给更多的朋友!
前言
本文主要介绍的是利用python爬取京东商城的方法,文中介绍的非常详细,下面话不多说了,来看看详细的介绍吧。
主要工具
scrapy BeautifulSoup requests分析步骤
1、打开京东首页,输入裤子将会看到页面跳转到了这里,这就是我们要分析的起点
2、我们可以看到这个页面并不是完全的,当我们往下拉的时候将会看到图片在不停的加载,这就是ajax,但是当我们下拉到底的时候就会看到整个页面加载了条裤子的信息,我们打开chrome的调试工具,查找页面元素时可以看到每条裤子的信息都在<li class='gl-item'></li>这个标签中,如下图:
3、接着我们打开网页源码就会发现其实网页源码只有前条的数据,后面条的数据找不到,因此这里就会想到ajax,一种异步加载的方式,于是我们就要开始抓包了,我们打开chrome按F,点击上面的NetWork,然后点击XHR,这个比较容易好找,下面开始抓包,如下图:
4、从上面可以找到请求的url,发现有很长的一大段,我们试着去掉一些看看可不可以打开,简化之后的url= install requests,代码如下:
2、根据上面的分析可以知道,第二步就是得到异步加载的url中的参数show_items,就是li标签中的data-pid,代码如下:
3、下面就是获取前张图片的url了,也就是主网页上的图片,其中一个问题是img标签的属性并不是一样的,也就是源码中的img中不都是src属性,一开始已经加载出来的图片就是src属性,但是没有加载出来的图片是data-lazy-img,因此在解析页面的时候要加上讨论。
代码如下:
前三十张图片找到了,现在开始找后三十张图片了,当然是要请求那个异步加载的url,前面已经把需要的参数给找到了,下面就好办了,直接贴代码:
4、通过上面就可以爬取了,但是还是要考虑速度的问题,这里我用了多线程,直接每一页面开启一个线程,速度还是可以的,感觉这个速度还是可以的,几分钟解决问题,总共爬取了个网页,这里的存储方式是mysql数据库存储的,要用发哦MySQLdb这个库,详情自己百度。
当然也可以用mogodb,但是还没有学呢,想要的源码的朋友请看下面:
一、GitHub源码
二、本地下载
拓展总结
写到这里可以看到搜索首页的网址中keyword和wq都是你输入的词,如果你想要爬取更多的信息,可以将这两个词改成你想要搜索的词即可,直接将汉字写上,在请求的时候会自动帮你编码的,我也试过了,可以抓取源码的,如果你想要不断的抓取,可以将要搜索的词写上文件里,然后从文件中读取就可以了。以上只是一个普通的爬虫,并没有用到什么框架,接下来将会写scrapy框架爬取的,请继续关注积木网哦!!!
好了,
标签: python爬虫全套教程
本文链接地址:https://www.jiuchutong.com/biancheng/375556.html 转载请保留说明!友情链接: 武汉网站建设