分享

Python新手学习网络爬虫要做什么?

 xiaoyimin 2018-12-12

爬虫,被称为网络机器人,在FOAF社区中间,更经常的称为网页追逐者,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本,主要用于搜索引擎,它将一个网站的所有内容与链接进行阅读,并建立相关的全文索引到数据库中,然后跳到另一个网站。

传统爬虫从一个或若干初始网页的URL开始,获得初始网页上的URL,再不断从当前页面上抽取新的URL放入队列,直到满足系统的一定停止条件。

我们自学一段时间Python后想要学习网络爬虫,需要做些什么吗?

想要做爬虫,我们就需要做到以下几点:

一、先了解html有关的知识

html是一种标记语言并不难学,它是超文本标记语言,标准通用标记语言下的一个应用。“超文本”就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。超文本标记语言的结构包括“头”部分(英语:Head)、和“主体”部分(英语:Body),其中“头”部提供关于网页的信息,“主体”部分提供网页的具体内容。

Python网络爬虫学习,不需要你深入学习html,只要知道掌握它常用的简单标签跟知识点就行。

二、比起html,js建议多少懂一点

js比html难很多,但多少也要知道它的一些知识原理,有条件的推荐看下《JavaScript DOM编程艺术》和《Javascript高级程序设计》的前三章这两本书,能让你对js有一定的认识。

三、urllib、urllib2两个库很重要

urllib和urllib2个库是我们在抓取页面要用的。在python中,urllib和urllib2不可相互替代,虽然urllib2是urllib的增强,但是urllib中有urllib2中所没有的函数。

urllib2可以用urllib2.openurl中设置Request参数,来修改Header头。如果你访问一个网站,想更改User Agent(可以伪装你的浏览器),你就要用urllib2。

urllib支持设置编码的函数,urllib.urlencode,在模拟登陆的时候,经常要post编码之后的参数,所以要想不使用第三方库完成模拟登录,你就需要使用urllib。

记住!urllib一般和urllib2一起搭配使用,而且Cookielib这个库配合urllib2可以封装opener,在需要cookie时可以自动解决,建议了解一些,会封装opener即可。re正则表达式库可以帮助你高效的从页面中分离要的内容,正则表达式要略知一二。

四、scrapy多去了解下

scrapy是应用最广泛的爬虫框架,没有之一,而且是成熟度最高的框架,可利用成熟产品,避免重复“造轮子”,可以更快速的构建项目。

Scrap也是Python开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和自动化测试。是你学习爬虫绝对会用到的一个框架。

五、抓包知识与网络防爬

学习一些抓包知识,有些网站防爬,需要人工浏览一些页面,抓取数据包分析防爬机制,然后做出应对措施。比如解决cookie问题,或者模拟设备等。

我们要知道对方网站是怎么防止爬虫的,比如:

新建 内容

User-agent: *

Disallow: /

或者网页头部文件添加,添加如下语句:

当网站出现这样类似的反爬机制时,你对抓包知识理解有多深就有多好的解决方式,这里还有一点要提下,如果网站有API,写爬虫会更容易哦!

自学Python一般学的都是学些基本语法,或者字符串、字节串的解码与编码,对于网站开发、网络爬虫什么的都是无法理解的,所以小编今天就为你们指出一条网络爬虫的学习方向,上面五种学习爬虫会用到的知识,你若是都弄懂了,爬虫的学习也就成功了。

以上便是小编对“Python新手学习网络爬虫要做什么?”的大致介绍,希望对您有所帮助!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多