aardio - 【库】http访问网页

news2024/11/26 18:51:09

为了简化http访问操作,提高速度,丰富功能,特封装了此库,可以根据需要进行选择。

本库带一个dll,所以建议优先选择使用 inet.http 库:

如果使用 inet.http库,直接 inet.http.get() 速度较慢。

大量访问的话,建议这样用:

        var http=inet.http(); // 先声明一个http对象实例

        http.get("http://www.baidu.com"); //使用这个http对象实例,对多个网址进行访问

这样速度会很快。

经过多次99999次循环测试,稳定性和速度都可以,没出现访问失败现象。 

库文件下载地址

下载地址 光庆·程序·在线 → aardio资源下载 → http.rarhttp://chengxu.online/

解压到:/lib/godking/ 目录下

基本用法:

var body,header = godking.http({
	url = "https://www.aardio.com/"; /*完整网址*/
	method = ""; /*访问方式,"POST"或者“GET”,默认为“GET”。*/
	postData = ""; /*POST提交信息,POST专用。*/
	header = ""; /*附加协议头,如"Referer: "*/
	outTime = 0; /*超时值,单位毫秒,默认30000,即30秒。*/
	proxy = ""; /*代理地址*/
	username = ""; /*用户名*/
	password = ""; /*密码*/
	noHeader = false; /*是否不返回状态文本*/
	noRedirect = false; /*是否不自动跳转*/
	noCookie = false; /*是否不写入cookie*/
	noResponse = false; /*是否不获取返回数据,以提高请求速度*/
	toString = false; /*是否将返回的数据转换为string。【false】不转换【true】转换并自动识别utf8【8】转换并强制设为utf8*/
})

使用例程:

import console; 
console.open();
import godking.http;

// ★★★★★ 通过数组参数,打开网页
var body,header = godking.http("https://www.aardio.com/")
console.dump(#body,header);

// ★★★★★ 通过配置字典参数,打开网页	
var body,header = godking.http({
	url = "https://www.aardio.com/"; /*完整网址*/
	method = ""; /*访问方式,"POST"或者“GET”,默认为“GET”。*/
	postData = ""; /*POST提交信息,POST专用。*/
	header = ""; /*附加协议头,如"Referer: "*/
	outTime = 0; /*超时值,单位毫秒,默认30000,即30秒。*/
	proxy = ""; /*代理地址*/
	username = ""; /*用户名*/
	password = ""; /*密码*/
	noHeader = false; /*是否不返回状态文本*/
	noRedirect = false; /*是否不自动跳转*/
	noCookie = false; /*是否不写入cookie*/
	noResponse = false; /*是否不获取返回数据,以提高请求速度*/
	toString = false; /*是否将返回的数据转换为string。【false】不转换【true】转换并自动识别utf8【8】转换并强制设为utf8*/
})
console.dump(#body,header)

// ★★★★★ 不获取返回数据,但是不影响获取header
// 访问一个MP4文件,只发送请求,获取头文件,但不获取文件数据,试试有多快。
var body,header = godking.http({
	url = "http://download.aardio.com/demo/Sintel_Trailer.mp4"; /*完整网址*/
	noResponse = true; 
})
console.dump(#body,header)

// ★★★★★ 设置超时,如果文件太大了,下载时间超出我们的预算时间,可以中断下载。
var body,header = godking.http(
	url = "http://download.aardio.com/demo/Sintel_Trailer.mp4",
	outTime = 1000, // 超过1秒钟就中断访问
)
console.dump(#body,header)	

/**
★★★★★ 设置不允许跳转:看看真正的网页代码是什么:
访问:
http://download.aardio.com/demo/video.aardio 
实际上会跳转到: 
http://download.aardio.com/demo/Sintel_Trailer.mp4
我们通过设置 noRedirect = true 看看 video.aardio 的真正代码:
**/
var body,header = godking.http({
	url = "http://download.aardio.com/demo/video.aardio"; /*完整网址*/
	noRedirect = true;
})
console.dump(body,header)

console.pause(true);

执行效果: 

测速代码

测试结果仅供参考:

import console; 
import inet.http
import godking.http
var inethttp=inet.http()
inethttp.disableCache()

console.open()
var url="http://chengxu.online"

console.dump("inet.http访问测试:")
var t=inet.http.get(url,,,,0x4000000/*_INTERNET_FLAG_DONT_CACHE*/);
console.dump("返回结果长度:",#t,'\n')

console.dump("inet.http对象实例访问测试:")
var t=inethttp.get(url);
console.dump("返回结果长度:",#t,'\n')

console.dump("godking.http访问测试:")
var t=godking.http(url);
console.dump("返回结果长度:",#t,'\n')

console.dump("inet.http.get访问100次,等待中……")
var t=time.tick()
for(i=1;100;1){
	inet.http.get(url,,,,0x4000000/*_INTERNET_FLAG_DONT_CACHE*/);
}
console.dump("共耗时:",time.tick()-t)

console.dump("inet.http对象实例访问100次,等待中……")
var t=time.tick()
for(i=1;100;1){
	inethttp.get(url);
}
console.dump("共耗时:",time.tick()-t)

console.dump("godking.http访问100次,等待中……")
var t=time.tick()
for(i=1;100;1){
	godking.http(url=url,noResponse=true);
}
console.dump("共耗时:",time.tick()-t)

console.pause(true);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/651276.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

理解3ds max中的容器的概念

实验一: 在场景中创建一个容器 把这个容器保存为一个文件,在文件夹中可看到此容器文件,其大小为892KB,同时可看到生成一个同名的lock类型文件。 将场景中的某一个物体(面加多一点的)添加到容器中&#x…

框架---面经

Spring 循环依赖 概念 多个实体之间相互依赖并形成闭环的情况就叫做"循环依赖”,也叫做”循环引用。 三级缓存解决循环依赖的原理 循环依赖的解决方案--- Feild注入单例(AutoWired) 直接在类的成员变量上使用Autowired注解&#xf…

SM2椭圆曲线公钥密码算法

国家密码管理局于2010年12月17日发布了SM2椭圆曲线公钥密码算法,并要求为对现有基于RSA算法的电子认证系统、密钥管理系统、应用系统进行升级改造。关于算法标准,请参见《国家密码管理局公告(第 21 号)》,网址为​​ht…

JavaWeb【总结】——(请求和响应)浏览器发送请求的方式 服务器响应的方式

本文目录 引出JavaWeb相关知识1.网页状态码web相关背景知识如何在idea中建tomcat web项目2.Web的请求request:get和post,响应response3.同步请求和异步请求Ajax,以及异步的Json响应4.同步jsp和异步ajax的axios下,转发或重定向思考…

【图片轮播】Vue如何实现移动端图片轮播效果,支持左右滑动(附图文及代码)

【写在前面】 日常生活中,其实我们是离不开手机查看相册的,尤其是图片的轮播展示,最近我就接到我家老大给出的需求,首先是从网上下载下来之前她做的图片,然后她就希望能够在自己手机上能随时查看,这不没办法…

Java使用OpenCV进行图像操作

OpenCV图像操作 OpenCV概述下载与安装目录说明项目集成验证 Mat类创建Mat对象其他操作 常见图像API读取与输出图像显示图像图像压缩和解压缩图像转换图像缩放亮度调整图像锐化图像梯度图像二值化边缘检测图像高斯模糊图像反色 OpenCV 概述 OpenCV(开源计算机视觉库…

2023互联网高级测试工程师至少具备的能力

业务熟悉 熟悉本系统 测试人员参与测试的系统的各种业务场景,必须做到精熟 。一旦需求有改动,可以清楚快速的知道上下文。同时可以清楚的知道哪些点是需要重点测试的。 熟悉跟本系统有通讯的上下游系统业务 跟本系统有通讯的上下游系统也要非常熟悉。这…

Exception in thread “main“ java.lang.UnsupportedClassVersionError 50报错处理

之间正常走jenkinsdocker自动化部署的项目,今天改了一个文件,点了一下,竟然没有部署上去,提示如上,如下 Exception in thread "main" java.lang.UnsupportedClassVersionError: com/coocaa/tsp/sys/user/Use…

Web 自动化测试Selenium 之PO 模型

目录 1. po 模型介绍 2. PageObject 设计模式 3. PO 的核心要素 4. 非PO 实现 5. PO 实现 6. 总结 7. PO 模式的特点 总结: 1. po 模型介绍 在自动化中,Selenium 自动化测试中有一个名字经常被提及 PageObject (思想与面向对象的特征相同)&#x…

【改进算法】混合鲸鱼WOA和BAT算法(Matlab代码实现)​

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

Python键盘监听:实现快捷操作和自动化脚本(监听组合键

前言 本文主要介绍一下使用Python进行事件监听功能,以实现一些特有的操作。本文旨在介绍如何实现这一功能。 笔者根据一些需求写了一个小工具,流程和功能如下图所示(实际功能有更多): 该工具主要实现了 键盘监听 和 鼠…

从Linux源码看TIME_WAIT状态的持续时间

前言 笔者一直以为在Linux下TIME_WAIT状态的Socket持续状态是60s左右。线上实际却存在TIME_WAIT超过100s的Socket。由于这牵涉到最近出现的一个复杂Bug的分析。所以,笔者就去Linux源码里面,一探究竟。 首先介绍下Linux环境 TIME_WAIT这个参数通常和五…

C++入门,一些C++基本概念介绍

文章目录 目录 前言 1.C关键字 1.1命名空间 1.2命名空间定义 1.3命名空间的使用 2.C输入&输出 3.缺省参数 3.1缺省参数的概念 3.2缺省参数分类 4.函数重载 4.1函数重载的概念 5.引用 5.1 引用特性 5.2 常引用 5.3引用的使用场景 5.4引用和指针 6.内联函数…

【Java基础】注解——自定义注解

什么是注解? Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。 比如我们常见的Override和Deprecated都是注解,注解可以加在类、方法、成员变量等上面,类似于给他们“打标签"。 注解怎么定义? public interface…

华为OD机试真题 JavaScript 实现【百钱买百鸡问题】【牛客练习题】

一、题目描述 公元五世纪,我国古代数学家张丘建在《算经》一书中提出了“百鸡问题”:鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何? 现要求你打印出所有花一百元买一百…

AM@空间直角坐标系@数量积和向量积@向量的外积在物理学中的相关概念

文章目录 空间直角坐标系坐标面分向量坐标分解式余弦定理数量积的坐标表示公式 向量积向量积的坐标表示公式 向量的外积在物理学中的相关概念物理量ref 角速度和向量积量纲Base unit (measurement)Background🎈International System of Units🎈附 表达方…

【ROS】ROS1导航(了解)

1、简述 ROS1导航模块navigation,它从里程计、传感器流和目标姿势中获取信息,并将速度、角速度控制命令发送至差速控制单元。 因为是ROS1,所以下面的内容只是一带而过,没有深入学习总结。详细内容可参考官网:http://…

Spring高手之路5——彻底掌握Bean的生命周期

文章目录 1. 理解Bean的生命周期1.1 生命周期的各个阶段 2. 理解init-method和destroy-method2.1 从XML配置创建Bean看生命周期2.2 从配置类注解配置创建Bean看生命周期2.3 初始化和销毁方法的特性2.4 探究Bean的初始化流程顺序 3. PostConstruct和PreDestroy3.1 示例&#xff…

Scala入门

第1章 Scala入门 1.1 概述 Scala将面向对象和函数式编程结合成一种简洁的高级语言。 语言特点如下: (1)Scala和Java一样属于JVM语言,使用时都需要先编译为class字节码文件,并且Scala能够直接调用Java的类库。 &#…

Linux进程信号 | 信号处理

前面的文章中我们讲述了信号的产生与信号的保存这两个知识点,在本文中我们将继续讲述与信号处理有关的信息。 信号处理 之前我们说过在收到一个信号的时候,这个信号不是立即处理的,而是要得到的一定的时间。从信号的保存中我们可以知道如果…