我有个app,需要爬取网页上的内容。某一次在家中开发时,发现爬不到内容。换了好几个获取网页的方法都有问题,主要的两个bug是:
1:gzip finished without exhausting source
2:Not in GZIP format
问题1网上说用builder.addHeader("Accept-Encoding", "gzip, deflate");解决然而这样读取出来的内容时压缩过的,但我不想再写个解压的方法。既然这样,我就找了个读取gzip网页的方法。如何优雅的爬取gzip格式的页面并保存在本地(java实现)https://www.cnblogs.com/reycg-blog/p/9875817.html
这里提供的方法是挺优雅,结果出了问题2。我就奇怪了,按gzip读取不行,不按gzip读取也不行,这是怎么回事。
仔细回想之前的读取网页,似乎也经常读取不到,不知什么时候又可以了。在一个不经意间,发现了问题所在:我安卓手机开了wifi,当切换成数据流量时,竟然可以了。这是怎么回事?我想,可能是wifi和流量解压的方式不太一样,导致方法失效。好吧,这里更深的原因我还不清楚,等我弄清楚后再来完善这篇文章把。
一个安卓上网络爬虫的bug
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 导读:本文主要讲在HTTP和HTTPS实际开发中有用和有意思的地方,希望读者能够有所启发。主要包括:HTTP和HT...
- 前言 HTTP 协议在网络知识中占据了重要的地位,HTTP 协议最基础的就是请求和响应的报文头(Header),大...