爬虫入门教程①— 爬虫简介

作者: 终可见丶 | 来源:发表于2018-04-13 01:48 被阅读629次

    很多人都和我说过想学爬虫,但是不知道该怎么学,完全没有方向。所以这些最初萌动的想法,也随着不断遇到的问题,逐渐消失了。。。
    为了珍惜与保护好这种初学的干劲与激情,我决定写一个系列的文章来介绍一下爬虫。

    这是一个Python爬虫的教学介绍,但是思想在很多地方都通用。毕竟编程不能局限于语言。我更喜欢用Python开发,因为Python真的太方便啦~~。顺便再重温一下这个金句。
    Life is short, I use Python


    文章内容大概包括
    初学爬虫应该储备的必要的知识的介绍
    爬虫——请求数据
    爬虫——处理数据
    爬虫——存储数据
    爬虫综合知识
    常见的问题的处理办法


    1. 新手五问之一:What?
      爬虫是什么呢?简单概括:自动从网络上收集信息的一种程序。可能确实比较概括了,说了大家还是不知道这是什么东西。复杂点来说,就是一整套关于数据请求处理存储的程序,这之间又涉及到关于网络、数据结构的一些知识。之后的教程也会分别详细介绍关于数据的采集、处理、存储这三方面的知识。

    2. 新手五问之二:why?
      为什么会有爬虫呢?这个问题,直接回答可能不利于大家的想象力。所以让我们来看几个应用场景。
      (1) 新闻门户网站的新闻共享。比如说今日头条、一点新闻、腾讯新闻等等。他们的新闻来源,一个当然是从自己的记者这里产生,另一部分呢,就是从其他网站上,爬下来他们的记者写的文章。这样才能够做到新闻的门户级别。一个网站报道了一个新闻,其他的网站马上会给你推送相同的新闻了。这中间就是爬虫在起作用,如果是人去找新闻,不仅速度慢,还可能会重复,而且不能24小时工作。这当然就很不方便了。
      (2)搜索引擎的一部分。你有没有想过为什么我们能够从百度上搜索到形形色色的网站。为什么百度会存有那些网站的信息,让你一搜就出来了。百度搜索的一部分工作,就是运行它自己的爬虫,从上千万的网站,采集到网页,然后存起来,等待你的搜索。如果没有搜索引擎,你可能会有个小本本,上面记载了你常去的网站的链接,需要去哪个网站了,就拿出小本本翻一下,找一下。
      (3)为机器学习,大数据做准备机器学习需要大量的样本,大数据更是需要大量的数据,一般数据直接拿不到,那就只有自己动手从网络上通过爬虫获取了╮(︶﹏︶)╭

    3. 新手五问之三:where?
      我们这种普通人,能够在哪儿用到爬虫呢?
      比如我之前做的项目 教务处出成绩了,第一时间就发送自己的成绩信息到我的邮箱。就是利用了爬虫,定时去爬取教务处的成绩信息,发现有更新了就把教务处的网页发送邮件到我的邮箱。当然也可以拿来做其他的事情,比如
      收集你某个QQ好友的所有说说(毕竟了解一个人,始于社交软件内容,发展于投其所好的了解,最后就靠自己了)
      每天自动给自己发送排行榜靠前的糗百笑话(清晨起床笑一笑?)
      自动采集帖子、发帖(还记得当年的程序员笑话吗?女朋友一发微博,微博中如果有哭脸、难过、伤心等等词语,立马发送微博内容到自己邮箱,马上给予她最热切的关怀。)
      秒杀、抢购东西(为什么小米的东西秒空,为什么高铁抢票也秒空,这究竟是人性的泯灭,还是道德的丧失?这就是代码的魔力。)
      以上项目记得先拿小号测试一波,,没问题了再长久使用哈,否则如果账号被封,会很后悔的。

    4. 新手五问之四:how?
      怎样才能学好爬虫? 当然是冷静,仔细,耐心啦,好吧,这都是大家已经有的良好的品质了。其实需要的是对编程的有一定的了解,做到写代码心中有*数。
      另外。我觉得最重要的途径,还是多写代码。多说不如多做,记住的会忘,写下的,忘了还有记录可以查看。我最初学爬虫的时候,前期开始确实很难,因为对Python不了解,对爬虫也不是很明白,但是后来写代码写多了,慢慢懂了之前的代码的意思了,也知道怎么去优化自己的代码了。

    5. 新手五问之五:when?
      我什么时候才能写一个自己的爬虫啊?别着急。跟着教程走,教程中会慢慢教你一些爬虫代码的,相信以你高超的领悟能力,掌握了原理,就可以非常快地写出来一个完整的爬虫。并且还能够解释代码每一步的作用


    挖坑成功
    恭喜小伙伴们入坑~~~

    传送门:

    下一章

    所有的章节:

    相关文章

      网友评论

      本文标题:爬虫入门教程①— 爬虫简介

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