“Accept-Encoding: gzip, deflate”问题
来源:互联网 发布:stp文件打开软件 编辑:程序博客网 时间:2024/05/20 02:22
转载至http://zhidao.baidu.com/link?url=fG_OjaFDrklRpdeRpH_tlALrvNibI_IQnfMElOtdzNQ5MiLqM_4L039LCYXfPe-b7-5eAqGRbw67LEVDEVSy-KtqmQeDGasYY3qUQXOJ1jy
用ruby写的请求网页的程序,输出的文本是乱码
以下是代码,试了各种网上常见的方法,均不可行。
#encoding: UTF-8#!/usr/bin/rubyrequire 'net/http'require 'nokogiri'require 'uri' require 'utf8-cleaner'require 'iconv'def sendhttp(hash) http = Net::HTTP.new(hash['domain'],443) http.use_ssl = true resp = http.get(hash['uri'],hash['headers']) if resp.code == '200' return resp.body else return false endendheaders = { ##定义http请求头信息 'User-Agent' => 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:18.0) Gecko/20100101 Firefox/18.0', 'Content-Type' => 'application/x-www-form-urlencoded', 'Accept' => 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8', 'Accept-Language' => 'zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3', 'Accept-Encoding' => 'gzip, deflate', 'Connection' => 'keep-alive',} para = Hash.newpara['domain'] = 'access.redhat.com'para['headers'] = headerspara['uri'] = '/security/cve/CVE-2014-4877'output = sendhttp(para)puts output可以直接运行的。
提问者采纳
因为你用了 'Accept-Encoding' => 'gzip, deflate',发回来的内容是zip流,你应该去掉Accept-Encoding这一行即可。
0 0
- “Accept-Encoding: gzip, deflate”问题
- Accept-Encoding: gzip,deflate
- Accept-Encoding: gzip,deflate
- Accept-Encoding: gzip,deflate
- Accept-Encoding: gzip, deflate
- Accept-Encoding: gzip,deflate + libcurl + rt5350
- Accept-Encoding: gzip,deflate 以压缩格式接收请求数据
- http accept-encoding详解 HTTP协议-压缩(gzip,deflate)
- httpclient访问网站时设置Accept-Encoding为gzip,deflate返回的结果为乱码的问题
- Android HttpURLConnection Accept-Encoding: gzip 版本问题
- 设置Accept-Encoding为gzip,deflate,返回的网页是乱码
- C# 利用HttpWebRequest模拟登陆获取数据设置Accept-Encoding为gzip,deflate后返回的网页是乱码处理
- Accept-Encoding
- Accept-Encoding
- Accept-Encoding
- Accept-Encoding 引起乱码的问题
- deflate与gzip
- gzip and deflate
- flex的DataGrid的标题中添加图标以及限制单元格的输值
- SNMP监控中一些常用的OID
- RedHat Enterprise Linux 7关闭防火墙方法
- MiniUI快速入门教程(四)表单开发
- 实战录 | Kafka-0.10 Consumer源码解析
- “Accept-Encoding: gzip, deflate”问题
- tmux安装遭遇的问题解决
- 公式求幂→二分求幂→快速求幂→快速求幂取模
- servlet的配置
- 六、Android Binder机制浅析之注册MediaPlayerService(2)
- SpringMVC简单的登录
- 微信QQ的二维码登录原理js代码解析
- UVa 298 Race Tracks [BFS]
- 云端卫士科普~网络攻击专业名词梳理