首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Network.requestWillBeSent不考虑Javascript setTimeout重定向

Network.requestWillBeSent不考虑Javascript setTimeout重定向
EN

Stack Overflow用户
提问于 2021-08-10 01:26:10
回答 1查看 190关注 0票数 0

我在我的Node应用程序中使用Puppeteer来获取重定向链中的URL,例如:从一个URL转到另一个URL。到目前为止,我一直在创建ngrok,它使用简单的PHP头函数来重定向带有301和302请求的用户,而我的起始URL是在几秒钟后重定向到ngrok URL之一的页面。

但是,如果Network.requestWillBeSent遇到一个使用Javascript重定向的页面,它就会退出,我也需要它等待并获取这些页面。

URL的示例旅程:

  1. 启动-> https://example.com/ <-- setTimeout并重定向到ngrok
  2. ngrok url使用PHP用301重定向
  3. 其他一些使用JS setTimeout重定向到的ngrok,例如,另一个https://example.com/
  4. 完成-> https://example.com/

在这种情况下,Network.requestWillBeSent取1和2,但在3上完成,因此不能达到4。

因此,我只得到两个URL,而不是控制台记录所有四个URL。

很难创建一个复制,因为我不能设置所有ngrok等等,但是下面是一个码箱链接和一个Github链接,下面是我的代码:

代码语言:javascript
运行
AI代码解释
复制
const dayjs = require('dayjs');
const AdvancedFormat = require('dayjs/plugin/advancedFormat');
dayjs.extend(AdvancedFormat);

const puppeteer = require('puppeteer');

async function runEmulation () {

  const goToUrl = 'https://example.com/';

  // vars
  const journey = [];
  let hopDataToReturn;

  // initiate a Puppeteer instance with options and launch
  const browser = await puppeteer.launch({
    headless: false
  });

  // launch a new page
  const page = await browser.newPage();

  // initiate a new CDP session
  const client = await page.target().createCDPSession();
  await client.send('Network.enable');
  await client.on('Network.requestWillBeSent', async (e) => {

    // if not a document, skip
    if (e.type !== 'Document') return;

    console.log(`adding URL to journey: ${e.documentURL}`)

    // the journey
    journey.push({
      url: e.documentURL,
      type: e.redirectResponse ? e.redirectResponse.status : 'JS Redirection',
      duration_in_ms: 0,
      duration_in_sec: 0,
      loaded_at: dayjs().valueOf()
    });
  });

  await page.goto(goToUrl);
  await page.waitForNavigation();
  await browser.close();

  console.log('=== JOURNEY ===')
  console.log(journey)
}

// init
runEmulation()

我在Network.requestWillBeSent中遗漏了什么,或者我需要添加什么才能在中间找到几秒钟后使用JS重定向到另一个站点的网站。

EN

回答 1

Stack Overflow用户

发布于 2021-08-10 02:19:50

由于client.on("Network.requestWillBeSent")接受回调函数,因此不能在此使用awaitawait只对返回承诺的方法有效。每个async函数都会返回一个承诺。

当您需要等待回调函数完成执行时,您可以将代码放入回调函数中,如

代码语言:javascript
运行
AI代码解释
复制
client.on('Network.requestWillBeSent', async (e) => {

    // if not a document, skip
    if (e.type !== 'Document') return;

    console.log(`adding URL to journey: ${e.documentURL}`)

    // the journey
    journey.push({
      url: e.documentURL,
      type: e.redirectResponse ? e.redirectResponse.status : 'JS Redirection',
      duration_in_ms: 0,
      duration_in_sec: 0,
      loaded_at: dayjs().valueOf()
    });

    await page.goto(goToUrl);
    await page.waitForNavigation();
    await browser.close();
  
    console.log('=== JOURNEY ===')
    console.log(journey)

});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68724223

复制
相关文章
利用深度学习生成梵高风格画像
现在人工智能是个大热点,而人工智能离不开机器学习,机器学习中深度学习又是比较热门的方向,本系列文章就从实战出发,介绍下如何使用MXnet进行深度学习~ 既然是实战而且本文是入门级别的我们就不讲那么多大家都听不懂的数学公式啦~ 0x00 深度学习简介 虽然吧,我们不讲哪些深奥的数学原理,但是基本的原理还是要掌握下的~ 在介绍深度学习之前我们要先了解两个概念,机器学习和神经网络。 机器学习: 在介绍深度学习之前,我们先简单介绍下机器学习,我们引用下维基百科上机器学习的定义: 机器学习是人工智能的一个分支。人工智
IT派
2018/03/29
1.2K0
利用深度学习生成梵高风格画像
【大数据分析 | 深度学习】在Hadoop上实现分布式深度学习
大数据和深度学习结合之路——在Hadoop上实现分布式深度学习(本质理解:搭好环境后可运行深度学习程序)
Francek Chen
2025/01/22
820
【大数据分析 | 深度学习】在Hadoop上实现分布式深度学习
AI绘画:利用深度学习自动生成肖像漫画
肖像漫画是一种独特的艺术形式,艺术家以夸张的方式勾勒出一个人的脸,大多数时候都是为了体现幽默感。自动化这种技术带来了挑战,因为所涉及的复杂细节和形状的数量,以及转变为创造性夸大的人所需的专业技能水平。
AiTechYun
2018/12/19
5.1K0
AI绘画:利用深度学习自动生成肖像漫画
深度学习在推荐系统上的应用
深度学习最近大红大紫,深度学习的爆发使得人工智能进一步发展,阿里、腾讯、百度先后建立了自己的AI Labs,就连传统的厂商OPPO、VIVO都在今年开始筹备建立自己的人工智能研究所。 确实深度学习很火,近期深度学习的战火烧到推荐系统,其强大的表征能力和低准入门槛,已经成为各大高校和中国人改网络发paper的红利时代。可是我还没能发上那么几篇,之前面试大厂的AI labs被总监虐,感觉工作之后被压榨太多,快干了。 推荐系统为什么引入深度学习? 为什么我们会想到使用深度学习去处理推荐系统里面的事情呢,推荐系统从
AI研习社
2018/03/16
1.7K0
深度学习在推荐系统上的应用
深度学习模型在FPGA上的部署
我是来自山区、朴实、不偷电瓶的AI算法工程师阿chai,给大家分享人工智能、自动驾驶、机器人、3D感知相关的知识
计算机视觉
2021/04/26
6.6K1
深度学习模型在FPGA上的部署
深度学习在推荐系统上的应用
作者:陈仲铭 量子位 已获授权编辑发布 转载请联系原作者 深度学习最近大红大紫,深度学习的爆发使得人工智能进一步发展,阿里、腾讯、百度先后建立了自己的AI Labs,就连传统的厂商OPPO、VIVO都在今年开始筹备建立自己的人工智能研究所。 确实深度学习很火,近期深度学习的战火烧到推荐系统,其强大的表征能力和低准入门槛,已经成为各大高校和中国人改网络发paper的红利时代。可是我还没能发上那么几篇,之前面试大厂的AI labs被总监虐,感觉工作之后被压榨太多,快干了。 一. 推荐系统为什么引入深度学习? 为
量子位
2018/03/21
1.2K0
深度学习在推荐系统上的应用
在hadoop2.0上实现深度学习
我承认我又偷懒了,只是大概写了下提纲,和完成了第一章节的部分写作。不睡午觉的恶果啊,原本已经写好草稿,讲讲语言和信息的关系,结果,实在是回家后好困。
哒呵呵
2018/08/06
1K0
在hadoop2.0上实现深度学习
资源 | 如何利用VGG-16等模型在CPU上测评各深度学习框架
选自GitHub 机器之心编译 参与:蒋思源、刘晓坤 本项目对比了各深度学习框架在 CPU 上运行相同模型(VGG-16 和 MobileNet)单次迭代所需要的时间。作者提供了所有的测试代码,读者可以尝试测评以完善该结果。 项目地址:https://github.com/peisuke/DeepLearningSpeedComparison 在本项目中,作者测评了流行深度学习框架在 CPU 上的运行相同模型所需要的时间,作者采取测试的模型为 VGG-16 和 MobileNet。所有的测试代码都已经加入
机器之心
2018/05/08
2.2K0
资源 | 如何利用VGG-16等模型在CPU上测评各深度学习框架
在Wildfire上利用XXE
本文将通过HTTP锁定方法介绍我在Red Teaming Engagement期间在中发现的一个有趣的带外XXEProduct Based Company漏洞之一,并大规模利用了该漏洞。
Khan安全团队
2021/03/10
3780
在Wildfire上利用XXE
如何利用图卷积网络对图进行深度学习(上)
基于图的机器学习是一项困难的任务,因为图的结构非常复杂,而且信息量也很大。这篇文章是关于如何用图卷积网络(GCNs)对图进行深度学习的系列文章中的第一篇,GCNs是一种强大的神经网络,旨在直接处理图并利用其结构信息。
AiTechYun
2020/02/23
9700
arXiv|使用深度生成模型在3D空间上生成类药分子
今天给大家介绍的是北京大学来鲁华课题组在arXiv上挂出的预印论文《Learning to design drug-like molecules in three-dimensional space using deep generative models》。近年来,分子图的深度生成模型在药物设计领域受到了越来越多的关注。目前已经开发了多种模型来生成拓扑结构,但在产生三维结构方面的探索仍然有限。现有的方法要么关注于低分子量化合物而不考虑药物相似性,要么利用原子密度图来间接生成三维结构。在这项工作中,作者介绍了配体神经网络(L-Net),一种新的图生成模型,用于设计具有高质量三维结构的类药分子。L-Net直接输出分子(包括氢原子)的拓扑和三维结构,而不需要额外的原子放置或键序推理算法。实验结果表明,L-Net能够产生化学正确、构象有效的类药分子。最后,为了证明其在基于结构的分子设计中的潜力,作者将L-Net与MCTS结合,并测试其产生靶向ABL1激酶的潜在抑制剂的能力。
智能生信
2021/10/08
1.4K0
arXiv|使用深度生成模型在3D空间上生成类药分子
【深度学习】开源 | 利用深度学习直接从数据中计算拓扑特征
论文地址: http://arxiv.org/pdf/1906.01769v2.pdf
CNNer
2021/11/26
4680
【深度学习】开源 | 利用深度学习直接从数据中计算拓扑特征
为什么基于树的模型在表格数据上仍然优于深度学习
来源:Deephub Imba本文约2800字,建议阅读5分钟本文介绍了一个被世界各地的机器学习从业者在各种领域观察到的现象——基于树的模型在分析表格数据方面比深度学习/神经网络好得多。 在这篇文章中,我将详细解释这篇论文《Why do tree-based models still outperform deep learning on tabular data》这篇论文解释了一个被世界各地的机器学习从业者在各种领域观察到的现象——基于树的模型在分析表格数据方面比深度学习/神经网络好得多。 论文的注意事
数据派THU
2022/09/14
5080
为什么基于树的模型在表格数据上仍然优于深度学习
深度学习:利用神经网络在少量数据情况下预测房价走势
在前面两个神经网络的运用例子中,我们主要使用神经网络对输入数据预测出一个离散性结果,也就是预测的结果都是0,1,要不就是1到46中任意一个数,这些结果都是离散化,相互间不兼容。我们这节要用神经网络对输入数据预测出一个连续型结果,例如我们预测下个月房价的价格区间,明天的温度区间等等。 本节我们使用网络对房价进行预测,判断房价在未来一段时间内会处于怎样的价格区间,当模型构建好后,你把所关心地区历年来足够多的房价数据输入网络,你就可以得到它未来的价格变动走势,如此一来你便能抓住正确的买房出手时机了。 由于我们自己
望月从良
2018/07/19
1.6K0
在表格数据上,为什么基于树的模型仍然优于深度学习?
机器之心报道 机器之心编辑部 为什么基于树的机器学习方法,如 XGBoost 和随机森林在表格数据上优于深度学习?本文给出了这种现象背后的原因,他们选取了 45 个开放数据集,并定义了一个新基准,对基于树的模型和深度模型进行比较,总结出三点原因来解释这种现象。 深度学习在图像、语言甚至音频等领域取得了巨大的进步。然而,在处理表格数据上,深度学习却表现一般。由于表格数据具有特征不均匀、样本量小、极值较大等特点,因此很难找到相应的不变量。 基于树的模型不可微,不能与深度学习模块联合训练,因此创建特定于表格的深
机器之心
2022/08/25
1.1K0
在表格数据上,为什么基于树的模型仍然优于深度学习?
为什么基于树的模型在表格数据上仍然优于深度学习
在这篇文章中,我将详细解释这篇论文《Why do tree-based models still outperform deep learning on tabular data》这篇论文解释了一个被世界各地的机器学习从业者在各种领域观察到的现象——基于树的模型在分析表格数据方面比深度学习/神经网络好得多。
deephub
2022/11/11
4120
为什么基于树的模型在表格数据上仍然优于深度学习
为什么深度学习模型在GPU上运行更快?
当前,提到深度学习,我们很自然地会想到利用GPU来提升运算效率。GPU最初是为了加速图像渲染和2D、3D图形处理而设计的。但它们强大的并行处理能力,使得它们在深度学习等更广泛的领域中也发挥了重要作用。
数据科学工厂
2024/07/05
1810
为什么深度学习模型在GPU上运行更快?
揭秘LoRA:利用深度学习原理在Stable Diffusion中打造完美图像生成的秘密武器
在生成式人工智能领域,图像生成模型如Stable Diffusion凭借其出色的生成效果和广泛的应用场景,逐渐成为行业的热门技术。然而,随着需求的多样化和复杂化,如何高效地微调这些大型模型以满足特定的应用场景成为一个重要课题。LoRA(Low-Rank Adaptation)作为一种创新的微调技术,能够在保持原始模型性能的基础上,实现快速且高效的调整。本文将详细介绍LoRA的原理及其在Stable Diffusion中的应用,尤其是其在角色、风格、概念、服装和物体等分类中的应用场景。我们还将探讨通过AdditionNet控制多个同类型LoRA共同使用的策略,以优化生成效果。
DevKevin
2024/08/07
6740
揭秘LoRA:利用深度学习原理在Stable Diffusion中打造完美图像生成的秘密武器
深度学习论文精读[GAN]:利用深度生成先验进行多用途图像修复与处理
笔者最近在集中时间学习对抗生成网络(GAN),特别是深度生成先验进行多用途图像修复与处理,需要对图像修复与处理经典论文进行回顾和精读。 将从图像修复与处理的经典之作DGP《Exploiting Deep Generative Prior for Versatile Image Restoration and Manipulation》开始,重启精读之路。 7月14日,算法大咖1小时精讲Gan论文 扫码0.1元预约直播 提供代码数据集哈 DGP提出了一种挖掘GAN中图像先验的方式,在多个任务上揭示了GA
OpenCV学堂
2022/07/14
5820
深度学习论文精读[GAN]:利用深度生成先验进行多用途图像修复与处理
利用深度学习消去反光
越来越接近毕业季了,相信很多同学都结束了论文的撰写以及论文审批,现在就坐等着毕业论文答辩和毕业典礼了!其实我也是这样的一个状态,但是期间大Boss还是会安排很多任务下来,所以最近没有频繁推送好的文章,在此向关注“计算机视觉战队”的您说一句抱歉,希望您继续关注我们、支持我们。
计算机视觉研究院
2018/07/25
1.3K0
利用深度学习消去反光

相似问题

如何利用深度学习生成图像

20

利用Keras对数据进行深度学习

20

利用深度学习分析视频

20

利用深度学习软件自动生成艺术展图像

20

利用深度学习预测文本索引

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档