python爬取网页内容大作业_【大数据应用技术】作业八|爬虫综合大作业(下)...

前言

本次作业是爬取拉勾网python相关岗位的信息,通过爬取岗位id、城市、公司全名、福利待遇、工作地点、学历要求、工作类型、发布时间、职位名称、薪资、工作年限等数据并对其进行数据分析从而得出相应结论。

网页爬虫

1.代理IP

在爬取数据之前我们可以考虑使用代理ip进行爬取,所以这里我写了一段代码检测ip的有效性,这里我使用的是西刺免费代理ip进行测试。不过在测试中我发现可用的免费代理ip少之又少,并且时效性较短,用起来不太方便,所以如果有专门的爬虫需求的人可以考虑使用付费ip。

测试代理ip时效性代码如下:

importrequestsimportrandom

proxies= {'http': ''}defloadip():

url='https: // proxy.horocn.com / api / proxies?order_id = 3JXK1633928414619951 & num = 20 & format = text & line_separator = win & can_repeat = yes'req=requests.get(url)

date=req.json()

ipdate2=date['msg']globalipdate

ipdate.extend(ipdate2)print(ipdate)defgetproxies():

b=random.choice(ipdate)

d= '%s:%s' % (b['ip'], b['port'])globalproxies

proxies['http']=dglobalmsg

msg=b

loadip()

getproxies()print(proxies)

2.拉勾网python相关岗位爬虫

测试完代理IP之后,我们就可以开始正式对拉勾网python相关岗位的信息进行爬虫了。拉勾网python相关岗位网页爬虫代码如下所示:

(注意:在下面的 ip_list 中的代理IP到现在为止应该已经失效了,所以如果还要使用代理IP的话需要重新找新的代理IP)

1 #encoding: utf-8

2 importjson3 importrequests4 importxlwt5 importtime6 importrandom7

8 defGetUserAgent():9 '''

10 功能:随机获取HTTP_User_Agent11 '''

12 user_agents=[13 "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",14 "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Acoo Browser; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506)",15 "Mozilla/4.0 (compatible; MSIE 7.0; AOL 9.5; AOLBuild 4337.35; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",16 "Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)",17 "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 2.0.50727; Media Center PC 6.0)",18 "Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 1.0.3705; .NET CLR 1.1.4322)",19 "Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30)",20 "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN) AppleWebKit/523.15 (KHTML, like Gecko, Safari/419.3) Arora/0.3 (Change: 287 c9dfb30)",21 "Mozilla/5.0 (X11; U; Linux; en-US) AppleWebKit/527+ (KHTML, like Gecko, Safari/419.3) Arora/0.6",22 "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.2pre) Gecko/20070215 K-Ninja/2.1.1",23 "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9) Gecko/20080705 Firefox/3.0 Kapiko/3.0",24 "Mozilla/5.0 (X11; Linux i686; U;) Gecko/20070322 Kazehakase/0.4.5",25 "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko Fedora/1.9.0.8-1.fc10 Kazehakase/0.5.6",26 "Mozilla/5.0 (Win

你可能感兴趣的:(python爬取网页内容大作业)