当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript chrome-remote-interface类代码示例

本文整理汇总了TypeScript中chrome-remote-interface的典型用法代码示例。如果您正苦于以下问题:TypeScript chrome-remote-interface类的具体用法?TypeScript chrome-remote-interface怎么用?TypeScript chrome-remote-interface使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了chrome-remote-interface类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: connectToChrome

 private async connectToChrome(): Promise<Client> {
   const target = await CDP.New({
     port: this.options.cdp.port,
     host: this.options.cdp.host,
   })
   return await CDP({ target })
 }
开发者ID:nylen,项目名称:chromeless,代码行数:7,代码来源:local.ts

示例2: startChrome

  private async startChrome(): Promise<Client> {
    const { port } = this.options.cdp
    this.chromeInstance = await launch({
      logLevel: this.options.debug ? 'info' : 'silent',
      chromeFlags: [
        // Do not render scroll bars
        '--hide-scrollbars',

        // The following options copied verbatim from https://github.com/GoogleChrome/chrome-launcher/blob/master/src/flags.ts

        // Disable built-in Google Translate service
        '--disable-translate',
        // Disable all chrome extensions entirely
        '--disable-extensions',
        // Disable various background network services, including extension updating,
        //   safe browsing service, upgrade detector, translate, UMA
        '--disable-background-networking',
        // Disable fetching safebrowsing lists, likely redundant due to disable-background-networking
        '--safebrowsing-disable-auto-update',
        // Disable syncing to a Google account
        '--disable-sync',
        // Disable reporting to UMA, but allows for collection
        '--metrics-recording-only',
        // Mute any audio
        '--mute-audio',
        // Skip first run wizards
        '--no-first-run',
      ],
      port,
    })
    const target = await CDP.New({
      port,
    })
    return await CDP({ target, port })
  }
开发者ID:13768324554,项目名称:chromeless,代码行数:35,代码来源:local.ts

示例3: initRuntimeClient

  private async initRuntimeClient(): Promise<RuntimeClient> {
    const target = await CDP.New()
    const client = await CDP({ target })

    await this.setViewport(client)

    const runtime = new LocalRuntime(client, this.options)

    return { client, runtime }
  }
开发者ID:KhaledNobani,项目名称:chromeless,代码行数:10,代码来源:local.ts

示例4: startChrome

 private async startChrome(): Promise<Client> {
   this.chromeInstance = await launch({
     logLevel: this.options.debug ? 'info' : 'silent',
     port: this.options.cdp.port,
   })
   const target = await CDP.New({
     port: this.chromeInstance.port,
   })
   return await CDP({ target })
 }
开发者ID:nylen,项目名称:chromeless,代码行数:10,代码来源:local.ts

示例5: generate

/**
 * Connects to Chrome and generates a PDF from HTML or a URL.
 *
 * @param {string} html the HTML string or URL.
 * @param {CreateOptions} options the generation options.
 * @param {any} tab the tab to use.
 * @returns {Promise<CreateResult>} the generated PDF data.
 */
async function generate(html: string, options: CreateOptions, tab: any): Promise<CreateResult>  {
  await throwIfCanceled(options);
  const client = await CDP({ ...options, target: tab });
  try {
    const {Network, Page, Runtime} = client;
    await throwIfCanceled(options);
    if (options.clearCache) {
      await Network.clearBrowserCache();
    }
    await Promise.all([
      Page.enable(), // Enable Page events
      Runtime.enable(), // Enable Runtime events
    ]);
    if (options.runtimeConsoleHandler) {
      await throwIfCanceled(options);
      Runtime.consoleAPICalled(options.runtimeConsoleHandler);
    }
    if (options.runtimeExceptionHandler) {
      await throwIfCanceled(options);
      Runtime.exceptionThrown(options.runtimeExceptionHandler);
    }
    const url = /^(https?|file|data):/i.test(html) ? html : `data:text/html,${html}`;
    if (options.cookies) {
      await throwIfCanceled(options);
      await Network.setCookies({cookies: options.cookies});
    }
    await throwIfCanceled(options);
    await Promise.all([
      Page.navigate({url}),
      Page.loadEventFired(),
    ]); // Resolve order varies
    if (options.completionTrigger) {
      await throwIfCanceled(options);
      const waitResult = await options.completionTrigger.wait(client);
      if (waitResult && waitResult.exceptionDetails) {
        await throwIfCanceled(options);
        throw new Error(waitResult.result.value);
      }
    }
    await throwIfCanceled(options);
    // https://chromedevtools.github.io/debugger-protocol-viewer/tot/Page/#method-printToPDF
    const pdf = await Page.printToPDF(options.printOptions);
    await throwIfCanceled(options);
    return new CreateResult(pdf.data);
  } finally {
    client.close();
  }
}
开发者ID:timonweb-forks,项目名称:html-pdf-chrome,代码行数:56,代码来源:index.ts


注:本文中的chrome-remote-interface类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。