1043-Python-小组:李凯旋
工具:
- Python3.5
- requests库(网络库)
- BeautifulSoup(解析库)
- MongoDB(存储库)
先解释下Ajax
Ajax 是一种用于创建快速动态网页的技术,通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。就是如打开某个网页,鼠标下拉,网页又多了一部分内容,在这个过程之中只加载了多出来的那部分内容,并没有重新加载整个页面内容,这样的一项技术就是Ajax创建快速动态网页的技术。
例如:
Ajax异步加载鼠标下拉,这个显示加载中的样式就是Ajax异步加载。
目标站点分析
我们的目标是抓取街拍图集,返回图集标题、并将每一个图集的每一张子图存到项目根目录:
索引页
索引页详情页
点开图集后出现详情页,这就是我们要获得的其中一组图片
详情页分析索引页下的网页源代码(按F12)
首先动态加载肯定不是Doc目录下的,所以应该在XHR(异步)下查找
根据观察以及往下拉网页我们会发现有一个?offset这个标签一直在刷新,而且每次都会增加20。然后我们找到Preview查找到响应的代码,在data标签下包含图片和标题。
图中的title即是我们需要的图集标题,url即是我们需要的图集链接。
索引页分析2分析详情页源代码(按F12)
详情页分析1这组图下有8张图,每张图的链接都包含gallery这个变量字典下。
下一节,我们开始获得索引页,并解析索引页。
。