您的位置:首页 > 新闻资讯 > 文章内容
帮助到爬虫的技巧
来源:互联网 作者:admin 时间:2020-06-22 13:56:29

  掌握网络爬虫能够用到的一些小技巧,对于大家爬取数据遇到困难的时候,都很有帮助。

帮助到爬虫的技巧

  1、基本抓取网页:get方法、post方法

  2、gzip压缩

  有没有遇到过某些网页,不论怎么转码都是一团乱码。那说明你还不知道许多web服务具有发送压缩数据的能力,这可以将网络线路上传输的大量数据消减 60% 以上。这尤其适用于 XML web 服务,因为 XML 数据 的压缩率可以很高。

  但是一般服务器不会为你发送压缩数据,除非你告诉服务器你可以处理压缩数据。

  创建Request对象,添加一个 Accept-encoding 头信息告诉服务器你能接受 gzip 压缩数据然后就是解压缩数据

  3、伪装成浏览器

  某些网站反感爬虫的到访,于是对爬虫一律拒绝请求。所以用urllib2直接访问网站经常会出现HTTP Error 403: Forbidden的情况

  对有些 header 要特别留意,Server 端会针对这些 header 做检查

  (1)User-Agent 有些 Server 或 Proxy 会检查该值,用来判断是否是发起的 Request

  (2)Content-Type 在使用 REST 接口时,Server 会检查该值,用来确定 HTTP Body 中的内容该怎样解析。

  这时可以通过修改http包中的header来实现

  (3)Cookies处理

  cookies是某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密),python提供了cookielib模块用于处理cookies,cookielib模块的主要作用是提供可存储cookie的对象,以便于与urllib2模块配合使用来访问Internet资源。

  关键在于CookieJar(),它用于管理HTTP cookie值、存储HTTP请求生成的cookie、向传出的HTTP请求添加cookie的对象。整个cookie都存储在内存中,对CookieJar实例进行垃圾回收后cookie也将丢失,所有过程都不需要单独去操作。

  4、页面解析

  对于页面解析最强大的当然是正则表达式,这个对于不同网站不同的使用者都不一样。

  其次就是解析库了,常用的有两个lxml和BeautifulSoup,这两个库,都是HTML/XML的处理库,Beautifulsoup纯python实现,效率低,但是功能实用,比如能用通过结果搜索获得某个HTML节点的源码;lxmlC语言编码,高效,支持Xpath

  5、验证码的处理

  对于一些简单的验证码,可以进行简单的识别。但是有些反人类的验证码,可以通过打码平台进行人工打码。

  关于网络爬虫如果还有更多的问题,也可以咨询万变ip客服。


相关文章内容简介
推荐阅读
  • 14 2020-07
    匿名程度不同的ip代理

    ip代理从匿名角度有3个分类,选择不同的匿名ip,可以起到不同的隐藏效果。

  • 18 2020-04
    线程ip代理软件有什么不同?

    代理ip软件最近出现了一种线程ip软件,那么这个线程ip跟我们一般使用的换ip软件有什么不同?会影响到我们正常使用代理ip吗?

  • 16 2020-04
    使用需求让网络代理ip软件发展

    网络ip,你掌握得有多少?你知道ip是可以更换的吗?更换又是经过什么来操作的?

  • 01 2020-07
    代理ip的静态动态线路

    代理ip软件购买的时候会有不同的代理线路可以选择使用,一般是静态、动态两种,那么有什么区别呢?

  • 29 2018-10
    消费者如何选择代理ip?

    可能大家经过互联网搜索,可以找到很多不同类型、不同品牌的代理ip软件,商家会有不同的宣传策略,消费者又该怎么选择呢?

  • 22 2020-06
    通过字段识别代理ip类型

    要分清楚代理ip中的匿名程度其实非常简单,除了可以从运营商中获取,我们也能够通过代码来查询。