首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏爬虫精选

    js环境报错navigator is not defined

    @[toc]js环境报错navigatorisnotdefined遇到navigatorisnotdefined错误,通常是因为在Node.js环境中运行了浏览器端的代码。 window.location;//现在可以使用navigator了console.log(navigator.userAgent);console.log(navigator.platform);2.简单的模拟环境如果只需要基本功能 /常用属性plugins:[],mimeTypes:[],//常用方法javaEnabled:()=>false,sendBeacon:()=>true};}3.使用puppeteer-extra插件环境安装相关包 :用方案1或4常见的需要的属性:展开代码语言:JavaScriptAI代码解释//这些属性常被网站检测navigator.webdriver//通常设为falsenavigator.plugins.length =='undefined'){//现代环境globalThis[funcName]=func;}else{//其他环境this[funcName]=func;}}//使用makeGlobal('sayHello

    25610编辑于 2025-12-31
  • 来自专栏JS逆向之路

    JS逆向之浏览器环境详解

    JS逆向之浏览器环境详解 “浏览器环境”是JS逆向者升职加薪的必备技能,也是工作中不可避免的操作。 为了让大家彻底搞懂 “浏览器环境”的缘由及原理,本文将从以下四个部分进行描述: 什么是环境? 为什么要环境? 怎么环境环境实战 环境框架成品源码 一:什么是 “浏览器环境”? “浏览器环境” 其实是浏览器有 而Node没有的环境,即 BOM和DOM的对象; 二:为什么要 “浏览器环境”? 即对于这段 “js加密算法代码” 而言,我们出来的环境与浏览器环境一致。 三:怎么 “浏览器环境”? 传统环境太简陋,而且不够通用,代码组织混乱,我们最好将其组织为一个项目: 环境框架项目整体结构: 图片 那么实现这么一个浏览器环境框架需要哪些步骤哪些考虑呢?

    6.2K20编辑于 2022-12-09
  • 来自专栏JS逆向之路

    JS逆向之环境过瑞数详解

    三、详解环境过rs不知道环境原理的同志可以参考我上篇文章:JS逆向之浏览器环境详解;其实纯环境过瑞数原理很简单,我们来观察瑞数执行流程图解,基于浏览器环境执行这些动态JS可以生成可用的 cookie_t 那么只要我们的浏览器环境足够完美,使得在这些动态JS看来,我们环境===浏览器环境,那么我们环境执行这些动态JS,同样也能生成可用的 cookie_t,然后我们再通过 document.cookie 因为环境是一个系统性工作,是有通用套路的,我们可以使用上篇文章提到的环境框架进行系统性环境,我们要做的就是根据log输出以及出现的问题不断完善这个框架。 扣代码与环境都依赖对JS的熟练度,扣代码更侧重js语法和代码逻辑,环境更侧重原型链及BOM、DOM对象的模拟。扣代码熟练度依赖逆向经验,环境几乎只依赖JS熟练度。 而环境是通用的,的越多,可通杀的网站就越多。扣代码比环境执行效率高,毕竟环境的代码数比扣代码多很多,可以通过剔除不需要的环境来缩小差距; 扣代码人工耗时远高于环境

    6.3K30编辑于 2023-01-17
  • 【JS逆向百例】携某 testab 参数环境详解

    前言 最近很多粉丝咨询环境相关的问题,确实,相较于硬刚算法,环境相对通用、易于实现。不过现在网上很多文章,对于如何浏览器环境,都说的很模糊,或者直接表示”缺啥啥“。 诚然,环境的文章确实不好写,但这对于部分人来说,看完还是很蒙圈,如果是小白的话,那就更不友好了。 jsvmp 插桩辅助环境 对于 jsvmp,不要一上来就挂代理环境,我们应该先大致看看 vmp 代码怎样操作的浏览器环境。 相关 vmp 知识就不介绍了,网上有很多,自行查阅。 testab 环境 感觉市面上的环境教程很多都是说缺啥啥,很难找到一个非常详细的,很多人前面环境好,导致走到了错误的分支,一些浏览器对象或者函数被跳过执行了,以至于最后的环境没有对。 环境的话,这个网站用 node 或者 vm2 都可以,都是能得出这个一模一样的结果,这里选择用 vm2 进行环境方便一点。

    1.7K11编辑于 2024-08-19
  • 来自专栏全栈程序员必看

    oracle位函数 不足位数0

    不足位数位的函数: 1. 左位函数 LPAD(原始字符,填充后长度,填充字符) 2. 右位函数 RPAD(原始字符,填充后长度,填充字符) 如运行 select lpad('123',6,0) col1 from dual; 结果 select rpad('123',6,0)

    2.8K10编辑于 2022-10-04
  • 来自专栏AngelNI

    暑假()-3

    学完了vector,接下来就开始学习其他容器了。这些都是C++ STL中的比较好用的方法,让你的编程变得简单。

    47830发布于 2020-04-16
  • 来自专栏AngelNI

    暑假() -7

    并查集,在一些有N个元素的集合应用问题中,我们通常是在开始时让每个元素构成一个单元素的集合,然后按一定顺序将属于同一组的元素所在的集合合并,其间要反复查找一个元素在哪个集合中。简单的来说就是分门别类的问题。

    39930发布于 2020-04-16
  • 来自专栏AngelNI

    暑假()-5

    DFS全称Deep First Search,是一种遍历或搜索树或图的算法。在解决问题上,利用递归调用自身函数(这种说法好像不正确,领悟思想就好了)来实现搜索的目的。把一个事情拆解成若干个小事,来实现最终的问题。

    58320发布于 2020-04-16
  • 来自专栏AngelNI

    暑假()-2

    (但仍有许多程序环境必须使用内置数组),vector 是C++中的一个容器类型,vector类是随标准C++引入的标准库的一部分。

    59130发布于 2020-04-16
  • 来自专栏云深之无迹

    Sphinx

    sphinx-quickstart 脚本已经创建了 Makefile 以及 make.bat 可以令我们更加简单的随时进行编译,只要 $ make html 这篇呢就是比较杂得一篇,属于上面文章得一个

    1.5K10发布于 2020-12-07
  • 来自专栏咸鱼学Python

    Python 爬虫进阶必备 | Js 逆向之环境到底是在补什么?

    今天写的 Js 逆向之环境,就可以理解是在 Js 环境下精进我们的 " 骗术 " 正文 大家在看文章之前应该都清楚,Node 环境和浏览器环境是完全不同的,平台有很多的检测点可以发现我们是在浏览器运行 Js 还是在 Node 环境下运行 Js 环境做的就是尽可能根据网页上的 Js 完善本地的 Node 环境,让 Js 运行在 Node 中像浏览器一样正常运行,最高境界当然是 Js 拿来套上环境就跑 window 最基本的环境是公众号早期的文章,例如下面的几篇文章 实战案例浅析JS加密 - DES与Base64 实战案例浅析JS加密 - RSA与XXTEA 这些个文章中大家经常遇到的是 'window 我们在浏览器的控制台里看看 可以看到原来我们之前以为简简单单就构造出来的 window 和 navigator 这么复杂 这样一看像我们上面直接使用var定义的方法去环境就很容易被识别 例如 var 这里就又涉及了关于上述各类的继承关系,这里分享我找到的一张DOM中各类的继承关系图,希望对大家环境有所帮助 总结 这篇文章我的定义并不是关于环境的总纲或者是总述,只能说是掀起了环境神秘面纱的一角

    3.9K31发布于 2021-09-28
  • 来自专栏各类技术文章~

    Python 爬虫进阶必备 | Js 逆向之环境到底是在补什么?

    今天写的 Js 逆向之环境,就可以理解是在 Js 环境下精进我们的 " 骗术 " 正文 大家在看文章之前应该都清楚,Node 环境和浏览器环境是完全不同的,平台有很多的检测点可以发现我们是在浏览器运行 Js 还是在 Node 环境下运行 Js 环境做的就是尽可能根据网页上的 Js 完善本地的 Node 环境,让 Js 运行在 Node 中像浏览器一样不报错就可以了。 window 最基本的环境是公众号早期的文章 这些个文章中大家经常遇到的是 'window' is not defined 那像这样的报错提示应该如何处理? 我们在浏览器的控制台里看看 可以看到原来我们之前以为简简单单就构造出来的 window 和 navigator 这么复杂 这样一看像我们上面直接使用var定义的方法去环境就很容易被识别 例如 var 这里就又涉及了关于上述各类的继承关系,这里分享我找到的一张DOM中各类的继承关系图,希望对大家环境有所帮助 总结 这篇文章我的定义并不是关于环境的总纲或者是总述,只能说是掀起了环境神秘面纱的一角

    1.1K30发布于 2021-09-16
  • 来自专栏AngelNI

    暑假()-4

    动态规划算法是通过拆分问题,定义问题状态和状态之间的关系,使得问题能够以递推(或者说分治)的方式去解决。 动态规划算法的基本思想与分治法类似,也是将待求解的问题分解为若干个子问题(阶段),按顺序求解子阶段,前一子问题的解,为后一子问题的求解提供了有用的信息。在求解任一子问题时,列出各种可能的局部解,通过决策保留那些有可能达到最优的局部解,丢弃其他局部解。依次解决各子问题,最后一个子问题就是初始问题的解。

    51630发布于 2020-04-16
  • 来自专栏AngelNI

    暑假()-1

    GCD是求最大公约数,有两种方法:1.自己构建函数。2.头文件中的__gcd()函数.

    43720发布于 2020-04-16
  • 来自专栏AngelNI

    暑假()-6

    优先队列是什么呢?优先队列其实是一种特殊的队列,对队列的元素按照一定的先后顺序,队列自动排序,这就是优先队列。

    42210发布于 2020-04-16
  • 来自专栏水击三千

    android 间动画

    自动生成中间图像的动画,间动画,只需指定第一帧和最后一帧。 间动画的优点是节省硬盘空间,缺点是,无法生成复杂的动画。本文主要介绍经常用到的四种间动画:移动、缩放、旋转、透明度。 间动画的三个状态:动画开始、动画结束、动画循环。 2.缩放间动画 通过<scale>标签定义缩放间动画。 通过<roate>标签可以定义旋转间动画。 4.透明度间动画 通过  <alpha />标签设置透明度间动画。

    976100发布于 2018-02-27
  • 来自专栏云深之无迹

    CV篇(投影)

    前面虽然分享了那么多的东西,但是一些细节还是要补充的。 不同的投影模型适用的场景 这个是最常用的投影变换的特点 这个是较长的一个转换关系,是和像素坐标系相关的 也就是这个 这个是三个坐标系的转换示意图 酒店的走廊就有这个感觉 好难这个东西 https://blog.csdn.net/shikongz/article/details/124054183 https://blog.csdn.net/qq_29931565/article/deta

    36420编辑于 2022-11-29
  • 来自专栏Android开发经验

    间动画-translate

    使用步骤: 1.在res/anim/下定义动画文件,例如取名为translate.xml。

    86660发布于 2019-01-28
  • 来自专栏全栈程序员必看

    间动画缓动_ppt间动画在哪里

    Jetbrains全系列IDE稳定放心使用 ScaleAnimation是尺寸变化动画的类,控制View的尺寸变化。

    80920编辑于 2022-11-03
  • 来自专栏前端开发ing

    日期月份0

    快速给月份、日期前面0 String(new Date().getMonth()+1).padStart(2,0) 获得月份,此时类型为Number new Date().getMOnth()+1 Es2017

    2.7K20发布于 2021-03-23
领券