1、前言
写这个程序和博客的原因,纯粹是出于无聊。上课老师不准我们带耳机,所以就看不了视频,学不了新知识。
所以,正想着马上毕业了,正好也需要个人简历来参加面试,我呢,又不想自己去下载,就只有写个程序来搞他了。
2、前景准备
2.1、工具
pycharm2020.1.1
python3.7
chrome
2.2、用到的工具库
scrapy,requests,os
2.3、实现思路
既然是批量下载,那么就需要每个网页的所有简历的url,我们就可以使用scrapy的yield推送网址解析。
3、步骤实现
3.1、分析网页源码
首先我们打开我们需要爬的网址:个人简历网
当然,这个网址里面的简历模板都是免费的。
然后,熟悉的打开我们的审查工具。瞅瞅我们需要的网址。我这儿用到的工具还有个xpath helper。能够在网页上运行xpath的工具。当然你们也可以不用下载,可以直接手写。
可以很清楚的看到,我们所有的列表都在这里面。
所以我们写xpath语法的时候就只需要获取ul下的li标签就行。
但是,我们是爬取全部的网页。所以就需要分析下一页。我们再审查一下元素
我们要是想要跳转下一页,也就是说需要去访问这个href标签的元素就能跳转到下一页了。
所以,开始敲代码。
3.2、源码分析
我们说过,要下载每一个简历,也就是需要去访问这个简历的网址。我们随便打开一个简历看看里面的构造。
我们可以很清楚的看到,这个下载按钮绑定的是一个href超链接,并且超链接里面的后缀是docx结尾的。
换句话说,我们直接去点击超链接就能直接下载下来。
3.3、代码实现
首先还是新建一个scrapy项目
scrapy startproject grjl
cd grjl
scrapy genspider gerenmuban http://www.gerenjianli.com/moban/
然后开始我们的代码
写之前还是要先配置一下settings.py
BOT_NAME = 'grjl'
SPIDER_MODULES = ['grjl.spiders']
NEWSPIDER_MODULE =