如何使用 k6/loadimpact 解析 img 标签?
Posted
技术标签:
【中文标题】如何使用 k6/loadimpact 解析 img 标签?【英文标题】:How can i parse img tags with k6/loadimpact? 【发布时间】:2020-12-02 10:44:47 【问题描述】:我现在正在为我的工作使用 k6 负载测试,但遇到了问题。我如何解析来自网站的链接? (已经使用官方的 href 链接示例,但不明白如何改变它以处理图像)
例如,我正在尝试使用此站点 - top-tuning.ru(这是我工作任务中的示例之一)。我需要脚本来解析 img 链接和 href。我已经在尝试官方的 exaples 并且可以解析 href、head 标题、langAttr,但是我无法对 img 做同样的事情。这种结构效果很好:
const res = http.get("top-tuning.ru/");
const doc = parsehtml(res);
const pageTitle = doc.find('head title').text();
const langAttr = doc.find('html').attr('lang');
doc.find("body").toArray().forEach(function (item)
console.log(item.attr("href")););
【问题讨论】:
我已经在社区论坛回答了你。您需要告诉我们您已经尝试过什么以及哪些没有奏效,以便更好地帮助您:)。这是一个相当接近的问题的答案,可能会对您有所帮助***.com/a/61075801/5427244 我不明白如何使用您的脚本来回答我的网站以查找 img 链接 我链接的脚本比图像要多得多。而且它不是我的。您至少可以用您尝试过的内容和您正在尝试的页面更新您的问题(它可能不是您的真实页面,只是一些公共页面),以便我们可以更好地诊断究竟是什么不起作用?此外,您用于链接的内容也可能会有所帮助 但是每次尝试在另一个代码中使用图像都会给我 【参考方案1】:使用以下脚本,我可以获取您的图像:
import http from "k6/http";
import parseHTML from "k6/html";
export default function()
const res = http.get("https://top-tuning.ru/");
const doc = parseHTML(res.body);
const pageTitle = doc.find('head title').text();
const langAttr = doc.find('html').attr('lang');
doc.find("img").toArray().forEach(function (idx)
console.log(idx.attr("src"));
);
我需要更改的导入部分是:
-
您需要协议(在本例中为 https)来发出请求
您需要提供正文而不是响应对象来解析HTML
在那之后 - 一切正常:)
希望对你有帮助,你也可以使用console.log
、Object.keys(object)
和JSON.stringify(object)
当你不知道发生了什么的时候
【讨论】:
以上是关于如何使用 k6/loadimpact 解析 img 标签?的主要内容,如果未能解决你的问题,请参考以下文章
如何解析<IMG SRC =";值QUOT;从这个XML使用DOM