如何判断页面的编码?

在写爬虫程序(web页面)的时候,经常需要去解析页面的内容,而在解析前就必须要知道该页面是用何种字符集来编码的,这样才能有效的避免乱码的问题。

那么如何才能得知目的页面的编码呢?让我们来看看来自“W3C”的官方解释:

  1. An HTTP "charset" parameter in a "Content-Type" field
  2. A META declaration with "http-equiv" set to "Content-Type" and a value set for "charset"
  3. The charset attribute set on an element that designates an external resource

上述描述中表现了检测页面编码的优先级,也就是说首先会看http头信息中的“Content-Type”字段、如果没有,就去看Meta信息,还没有的话,对于一些外链(如css、JavaScript)就会看这种元素专门的charset字段。如果检查完上述三种方式之后还是无法确定呢?那就采用默认的ISO-8859-1字符集来解析。

顺便提一句,既然是W3C的标准,那就说明标准浏览器都是这么工作的哦!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,868评论 18 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,020评论 25 708
  • 编码问题一直困扰着开发人员,尤其在 Java 中更加明显,因为 Java 是跨平台语言,不同平台之间编码之间的切换...
    x360阅读 2,498评论 1 20
  • 突然想了很多。 只是因为突然很闲,非常闲的那种。 最近各种想法让我的大脑持续处于活跃状态,也是一年多后重新回归活跃...
    手写心情阅读 318评论 0 2
  • 180期福彩3D分析。。 点赞的私发4注直
    快乐中彩阅读 287评论 1 0