`

99宿舍四六级成绩查询模拟ruby版本和curl版本

    博客分类:
  • ruby
阅读更多

一.ruby版本,需要使用curb gem

# encoding: UTF-8
require 'curb'
#99宿舍网页是GBK的
CET_NUM = "xxxxxxxxxxxx"
CET_NAME = "xxxx".encode('gb2312', 'utf-8')
user = {
  :name => CET_NAME,
  :id => CET_NUM
}
get_score_url = "http://cet.99sushe.com/find"

curl = Curl.post(get_score_url, user) do |h|
  h.headers["Referer"] = "http://cet.99sushe.com/"
end

cet = curl.body.encode("utf-8", "gb2312")
puts cet.split(",")

二.curl版本,需要配合ruby转码

# encoding: UTF-8
require 'open-uri'

CET_NUM = "xxxxxxxxxxxx"
CET_NAME = "xxxx".encode('gb2312', 'utf-8')
cet_name = URI::encode CET_NAME
get_score_url = "http://cet.99sushe.com/find"

result = `curl 'http://cet.99sushe.com/find' -H 'Referer: http://cet.99sushe.com/' --data 'id=#{CET_NUM}&name=#{cet_name}'`
result = result.encode('utf-8', 'gb2312')
cet_result = result.split(",")

 

分享到:
评论

相关推荐

    安装rvm,把ruby版本提升至3.0.0

    在IT行业中,管理和切换Ruby版本是一项常见的任务,特别是在开发环境中,不同的项目可能依赖于不同版本的Ruby。`RVM`(Ruby Version Manager)是解决这一问题的利器,它允许开发者在多个Ruby版本之间轻松切换。本文...

    安卓android版本的curl库

    《安卓Android平台上的Curl库详解》 Curl是一个强大的命令行工具,用于在各种协议下传输数据,如HTTP、FTP、SMTP等。在Android平台上,Curl库扮演着重要的角色,尤其对于开发者来说,它提供了与服务器进行数据交互...

    编译好的 curl 的arm linux 版本

    【标题】"编译好的 curl 的arm linux 版本"涉及的主要知识点是关于软件构建、跨平台移植以及网络通信库的使用。 curl 是一个著名的开源命令行工具和库,用于在命令行下执行HTTP、HTTPS和其他多种网络协议的请求。它...

    ruby在unbuntu的安装版本

    注意:在开发过程中,确保定期更新Ruby和相关gem,以获取最新的安全修复和功能。你可以使用`rvm rubygems latest`来更新gem,`rvm get latest`来更新RVM本身。 通过以上步骤,你不仅了解了如何在Ubuntu上安装Ruby,...

    支持WINDOWS XP的CURL 最后版本7.56.1

    经过多版本尝试,CURL 最后支持WINDOWS XP的版本是7.56.1,此资源包为SRC包,与编译BIN包,并且带有LIBSSH2与OPENSSL 1.1.1q,openssl 0.9.8, zlib1.2.12,在7.56.1以后的版本都已经不支持WINDOWS XP,因为其已经...

    通过CURL命令实现模拟登陆

    使用CURL进行模拟登陆,在一些自动化场景中,相关脚本部署在Linux上,并且是命令行的操作方式,模拟页面的操作基本无法实现,本例使用curl模拟http请求,实现浏览器操作

    curl模拟post类必须精品

    curl模拟post跨域提交数据 包括cookie,agent

    php利用curl模拟登录

    curl是一个利用URL语法在命令行方式下工作的文件传输工具。该资源通过具体实例模拟页面登录。curl使用基本过程:第一步:使用curl_init()进行初始化,第二步:使用curl_...进行执行事务,第四步:curl_close()关闭。

    php curl模仿form表单提交图片或文件

    `curl_exec()`返回的是服务器的响应,你可以通过`curl_getinfo()`获取响应状态和其他信息,或者通过`curl_error()`检查是否有错误发生。 在ThinkPHP5框架中,我们可以利用其内置的`curl`方法来简化这个过程。TP5的...

    Go-golang版本的curl请求库

    "Go-golang版本的curl请求库"就是这样的一个解决方案,它允许我们在Go代码中复用`curl`的便利性。 这个库通常会提供与`curl`命令行工具相似的功能,包括设置HTTP方法(GET、POST等)、添加HTTP头、携带cookies、...

    PHPcurl模拟IP浏览器请求

    在IT行业中,PHP和cURL库常常被用来创建网络爬虫、API接口调用以及其他需要模拟HTTP请求的场景。PHPcurl模拟IP浏览器请求是通过PHP的cURL扩展来实现的,它允许开发者发送HTTP请求,并自定义各种请求头,包括伪装成...

    cURL的windows版本,带中文说明

    **cURL windows 版本详解** cURL 是一个强大的命令行工具,用于传输数据到或从服务器,基于各种协议如HTTP、HTTPS、FTP、FTPS等。它在开发者和系统管理员中广泛使用,用于测试、调试和自动化网络服务。本文将详细...

    php curl 模拟查询ems快递单 返回查询结果

    本教程将深入探讨如何使用PHP的cURL库来模拟查询EMS(中国邮政速递物流)的快递单状态,以便获取包裹的实时投递信息。 首先,我们需要理解`cURL`的工作原理。cURL是一个命令行工具,同时也提供了PHP的扩展,允许...

    curl模拟登陆rsa加密事例

    `curl_exec()`执行请求,`curl_getinfo()`和`curl_error()`分别用于获取响应信息和检查错误。如果登录成功,服务器通常会返回一个session cookie,我们需要保存并添加到后续请求的headers中,以保持登录状态。 在...

    windows版本curl.zip

    `windows版本curl.zip` 提供了一个特别为 Windows 平台编译的 64 位版本的 `curl` 实现,使 Windows 用户也能方便地进行网络请求。 这个压缩包文件`curl-7.64.1-win64-mingw`包含了`curl`的可执行文件,用户可以...

    curl下载curl包下载

    下载`curl`包的过程非常简单,首先,你需要访问`curl`的官方网站或者通过软件仓库(如APT for Ubuntu或YUM for CentOS)获取最新版本。官网地址是<https://curl.se/download.html>。在网站上,你可以找到适用于不同...

    curl模拟登陆源码

    PHPcurl模拟登陆教务系统源码,这里以武汉理工大学教务系统为例,可以自己在此基础上研究其他教务系统。

    curl-7.61.1库(只支持Openssl)

    《curl-7.61.1库:专为Windows 32位系统打造的Openssl兼容版本》 curl是一款强大的命令行工具,用于传输数据,它支持多种协议,包括HTTP、HTTPS、FTP、FTPS等。在信息技术领域,curl经常被开发者用来进行数据抓取、...

    Windows版本curl程序_curl

    【标题】"Windows版本curl程序_curl"涉及的是在Windows操作系统上使用curl工具进行网络请求和数据传输的知识。curl是一款强大的命令行工具,用于在不同的协议(如HTTP、FTP、SMTP等)下转移数据,它在开发、调试或...

    curl编译完成版本.rar

    提供的"curl编译完成版本"可能包含了预编译的curl库和可执行文件,这意味着用户可以直接使用,而无需自行编译源代码。编译过程通常包括配置、编译和安装步骤,涉及到选择特定的选项(如启用或禁用某些功能)、指定...

Global site tag (gtag.js) - Google Analytics