前言
临近毕业,设计一份好的,具有个性化的简历是必须的。
当然,简历的样式也有很多种,比如单页的,多页的,表格类的…现在我用python中的requests+bs4+正则表达式编写代码爬取网上的简历模板用作参考。
数据来源:http://www.gerenjianli.com(个人简历网)
简历获取
分析网站
打开网站我们看到如图所示的界面
点击简历模板进入我们所需要的界面如图:
图上所示便是我们所需要的简历模板种类只需要点击相应的类别便可查看和下载对应的模板,现在我们需要批量下载,这些简历模板。
爬取思路
通过对网站的分析我们可以得到如下的爬取思路:
数据获取思路
解析初始界面数据
获取对应简历种类的链接
进入相应种类模板的界面
解析界面
获取每份简历的链接
进入每份简历所在界面
解析界面获取数据
数据爬取
首先,先导入爬取数据所对应的库,如下:
import requests
from bs4 import BeautifulSoup
import re
import urllib
再定义一个Jianli类用来爬取和下载数据:
class Jianli:
def __init__(self,url):
self.url = url
现在用正则表达式和BeautifulSoup对初始界面进行解析,获取到每个种类简历模板链接:
def jie1(self):
data = requests.get(self.url)
data.encoding = data.apparent_encoding
soup = BeautifulSoup(data.text,'lxml')
#编写正则表达式提取链接
url_1 = re.compile(r'')
soup = str(soup)
repons = re.findall(url_1,soup)
运行测试截图:
获取每个种类模板后需要做的就是在每个种类的简历中解析出每个模板的链接:
for i in repons:
data1 = requests.get(i)
data1.encoding = data1.apparent_encoding
soup1 = BeautifulSoup(data1.text,'lxml')
soup2 = soup1.find_all('div','donwurl2')
soup2 = str(soup2)
#编写正则表达式提取下载链接