zoukankan      html  css  js  c++  java
  • 初始化加载和导航时脚本执行的函数(初始化脚本执行环境)page.evaluateOnNewDocument

    /**
     * Copyright 2017 Google Inc., PhantomJS Authors All rights reserved.
     *
     * Licensed under the Apache License, Version 2.0 (the "License");
     * you may not use this file except in compliance with the License.
     * You may obtain a copy of the License at
     *
     *     http://www.apache.org/licenses/LICENSE-2.0
     *
     * Unless required by applicable law or agreed to in writing, software
     * distributed under the License is distributed on an "AS IS" BASIS,
     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     * See the License for the specific language governing permissions and
     * limitations under the License.
     */
    
    'use strict';
    
    const puppeteer = require('puppeteer');
    
    function sniffDetector() {
      const userAgent = window.navigator.userAgent;
      const platform = window.navigator.platform;
    
      window.navigator.__defineGetter__('userAgent', function() {
        window.navigator.sniffed = true;
        return userAgent;
      });
    
      window.navigator.__defineGetter__('platform', function() {
        window.navigator.sniffed = true;
        return platform;
      });
    }
    
    (async() => {
      const browser = await puppeteer.launch();
      const page = await browser.newPage();
      await page.evaluateOnNewDocument(sniffDetector);
      await page.goto('https://www.google.com', {waitUntil: 'networkidle2'});
      console.log('Sniffed: ' + (await page.evaluate(() => !!navigator.sniffed)));
    
      await browser.close();
    })();
    
  • 相关阅读:
    求解未知矩阵的一些方法
    数二2019-19真题最简单的解法
    极坐标转化为参数方程的题目
    隐函数的不定积分
    Go 语言高性能编程
    1457. Pseudo-Palindromic Paths in a Binary Tree (M)
    0754. Reach a Number (M)
    1345. Jump Game IV (H)
    0091. Decode Ways (M)
    0498. Diagonal Traverse (M)
  • 原文地址:https://www.cnblogs.com/justart/p/9750387.html
Copyright © 2011-2022 走看看