爬虫作业2

作者: 万能滴小笼包 | 来源:发表于2017-07-17 00:19 被阅读69次

分析要爬取目标的网页的网页结构与元素标签位置信息

任务回顾

1.爬取网页:看准网 http://www.kanzhun.com

2.主要目的:爬取各公司的基础信息,评分以及“数据分析”,“数据运营”等数据领域岗位的面经

前期准备

确定要爬取的详细网页。根据对数据的需求,确定要爬取的对象,即公司信息与数据相关的面经信息;综合根据看准网的网页结构,确定将“面试”导航栏作为数据爬取的入口,此时的网页地址为:http://www.kanzhun.com/msh/?ka=head-interview

看准网网页布局

进入新页面后,可以看到如下布局的网页页面。除了与主页面相同的导航栏外,新页面中主要包括搜索栏,该搜索栏可以搜索感兴趣的公司、职位等。

在搜索栏下是标签栏,不同的搜索内容都有四个主要的导航方向,分别是公司、工资、招聘以及面试。分别从不同的角度提供相关的信息。

面试专栏主界面

在这一步骤中,先尝试输入关键词“数据分析”,此时的网页地址为:http://www.kanzhun.com/interviewl/search/?stype=&q=%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90 (网址等号后是“数据分析”的URL编码格式)

在网页左下方有“热门公司”这一栏,分别按照热度与面经数量进行降序显示。根据本人对数据的需求(公司有热度,所谓的大平台),所以初步计划是根据这一栏中公司的热度从高到低爬取数据。

以热度第一的公司百度为例,点进公司链接,打开新页面,此时的网页地址为:http://www.kanzhun.com/gsm11514.html?q=%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90&ka=select-hotcom-1 (select-hotcom-1 可理解为热度第一的标识)

热度第二的阿里的网页地址为:http://www.kanzhun.com/gsm9012.html?q=%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90&ka=select-hotcom-2

可以初步看出两个网页地址主要的区别:除了热度排行,还包括各公司网站主地址不同(如gsm11514.html与gsm9012.html)

所以之后的爬虫方案可以初步设计为:爬取指定公司的数据

与搜索职位相关的热门公司排行

网页结构

此时,已初步确定要爬取的链接。接下来主要对要爬取的网页进行网页结构分析。还是以百度为例。

主要分析界面

从上图中可以看到网页的主要布局。第一个还是网页的导航栏(包括搜索栏等),向下看是公司的基本信息,包括综合评分、企业规模、企业性质、平均工资等信息。再下面是标签栏,可以从不同的角度了解这家公司,当然主要感兴趣的还是面试哈。

然后是条件筛选栏,根据不同的地域和职位筛选想要的结果。再下侧是主要的面经专栏,此时显示的是查询“数据分析”职位的相关面试。右侧是面试难度显示栏。

面经完整结构

完整的面经栏如上图所示。包括给出面经的用户,面试所在公司的岗位,面试地点,面经内容,同时显示用户对面试的个人评测结果。

html元素标签信息

图片对应元素标签

根据chrome开发工具得到网页的html完整信息。

#公司的图片对应的元素
<div class="banner_pic">
            <div class="banner_logo">
                <a ka="com-logo" href="/gso11514.html">#公司编号
                    ![百度](https://img.haomeiwen.com/i3487919/1eeda18a956592c3.gif?imageMogr2/auto-orient/strip)#公司的图片<span></span>
                </a>
            </div>
 </div>
公司基本信息对应的元素标签
#公司基本信息
<div class="banner_word">
            <div class="bw_company">
                <h1>百度</h1>#公司的名称
                <em>
                    4.2</em>#公司综合评分
                <div class="star_box">
                    <i class="star"></i>
                </div>
            </div>
            <div class="bw_explain">
                <span>互联网</span>#公司类型
                        <em class="line"></em><span>北京</span>#公司地址
                        <em class="line"></em><span>10000人以上</span>#公司规模</div>
            <div class="bw_brief" id="view-profile" ka="com-detail-more">
                全球最大的中文搜索引擎、最大的中文网站
           <span class="more">more</span>#公司简介
            </div>
        </div>

#关注数
<div class="banner_interest">
             <span class="none"><em class="follow_num" data-num="9681">9681</em>关注</span>
             <a href="javascript:" ka="company-header-follow" class="js-follow-company icon_guanzhu " data-url="/user/v3/follow.json" data-id="11514"></a>#关注的原数据
         </div>
#公司详情信息
<div class="com_it">
    <section class="com_infor">
        <div class="ci_left">
            <span class="cil_perc">#好评比例
                84
                %
            </span>
            <span class="cil_num">#参与公司评价总人数
                来自
                    8226
                个员工
            </span>
            <span class="cil_rev"><a ka="percent-review-list" href="/gsr11514.html#co_tab" rel="nofollow">好评![](/v3/images/icons/i_right.png)</a></span>
        </div>
        <div class="ci_center">
            ![](/v3/images/icons/i_fengexian.png)
        </div>
        <div class="ci_right">
            <span class="cir_perc">#平均月薪
                9954</span>
            <span class="cir_num">#参与月薪调查总人数
                来自
                12502
                个员工
            </span>
            <span class="cir_rev"><a ka="percent-salary-list" href="/gsx11514.html#co_tab" rel="nofollow">元(平均月薪)![](/v3/images/icons/i_right.png)</a></span>
        </div>
    </section>
    <section id="co_tab" class="com_tab">
        <div class="tab_ul">
            <ul>#标签栏
                <li><a ka="com-blocker1-overview" href="/gso11514.html#co_tab" title="百度介绍">主页</a></li>
                <li><a ka="com-blocker1-question" href="/question/company/11514/#co_tab" title="百度问答">问答</a></li>
                <li><a ka="com-blocker1-review" href="/gsr11514.html#co_tab" title="百度怎么样">点评</a></li>
                <li><a ka="com-blocker1-interview" class="active" href="/gsm11514.html#co_tab" title="百度面试问题及面试流程">面试</a></li>
                <li><a ka="com-blocker1-salary" href="/gsx11514.html#co_tab" title="百度工资待遇">工资</a></li>
                <li><a ka="com-blocker1-job" href="/job/g11514.html" title="百度最新招聘信息">招聘</a></li>
            </ul>
        </div>
    </section>
</div>

得到基本信息后,主要针对面经信息进行爬取。下面的html代码为一些基本的元素信息。

面经基本信息
#面试的基本信息
<a href="">
       ![](/v3/images/portrait/i_header02.png)#头像
</a>
<p class="f_14 grey_99 dd_bot">面试百度的<a target="_blank" ka="interview-name1" href="/interview/3626/" class="green">数据分析实习生</a>.北京</p>#面试公司、职位、地点
<a target="_blank" ka="interview-result-1" href="/gsmsh8189347.html">
       <span class="feel_fail">面试未通过</span> #面试结果
</a>
<article>
      <a href="/gsmsh8189347.html?ka=interview-detail1-1" ka="interview-detail1-1" target="_blank">
       <h3 class="question_title">#面经标题
                    面试官很亲切 数据分析岗位更愿意招收性格内向的员工。</h3>
        <p class="question_content">#面经内容
                        面试官很亲切,虽然因为开会延迟了面试时间。岗位主要是数据分析...</p>
        </a>
  </article>
<div class="rdrc_center">#面试难度测评
      <div>
           ![](/v3/images/star/i_star_blue.png)
           <span class="grey_7a">我觉得面试有难度</span>
     </div>
     <div>
           ![](/v3/images/star/i_star_blue.png)
           <span class="grey_7a">面试总体感觉很好</span>
    </div>
</div>

阶段总结

总体得到了初步的爬取方案,具体要爬取的页面、关键的元素等等,可以为后序的爬虫工作做准备。


本文为 泰阁志-解密大数据 学习笔记,了解更多请关注微信“泰阁志”

相关文章

  • 爬虫作业2

    分析要爬取目标的网页的网页结构与元素标签位置信息 任务回顾 1.爬取网页:看准网 http://www.kanzh...

  • 爬虫课程作业2

    课堂作业要求 选择简书“解密大数据”专题里面上次爬虫课的作业文档地址作为分析页面 分析并提交该页面的网页结构分析与...

  • 【Python爬虫】作业2

    基础题a = 10b = 3下面三题分别运算后 c=? ,以及 c 的类型c = a/b - ac = a/b *...

  • python-爬虫基础(慕课网)

    二.爬虫简介以及爬虫的技术价值 2-1:爬虫是什么? 2-2:爬虫技术的价值? 三.简单爬虫架构 3-1:简单爬虫...

  • python猫眼电影爬虫+Django+Echarts图表

    一.爬虫作业:抓取猫眼电影网站数据 二.Django+echarts图表 三.爬虫和django代码 猫眼爬虫gi...

  • 爬虫作业2(酷狗音乐)

    import requests from lxmlimport etree import csv import r...

  • 【爬虫作业2】正则表达式爬虫

    1. 学习任务:正则表达式爬虫 Day 3 观看第二讲视频,了解爬虫原理和requests库的使用 Day 4 观...

  • Python网络爬虫

    Python开发简单爬虫(Python2.X版本,Eclipse工具) 一、爬虫介绍 爬虫调度端:启动、停止爬虫,...

  • 2018-05-13

    Scrapy爬虫 1.新建爬虫工程 scrapy startproject Spider(项目名字) 2.创建爬虫...

  • 课程作业-爬虫入门04-2-构建爬虫-WilliamZeng-2

    课堂作业 爬取解密大数据专题所有文章的内容,并保存到数据库中。数据库我选择了MySQL本地搭建的数据库。 要求保存...

网友评论

    本文标题:爬虫作业2

    本文链接:https://www.haomeiwen.com/subject/rauxkxtx.html