实例介绍
Puppeteer Sharp是官方Node.JS Puppeteer API的.NET端口。
用法
拍摄屏幕截图
using var browserFetcher = new BrowserFetcher(); await browserFetcher.DownloadAsync(); await using var browser = await Puppeteer.LaunchAsync( new LaunchOptions { Headless = true }); await using var page = await browser.NewPageAsync(); await page.GoToAsync("http://www.google.com"); await page.ScreenshotAsync(outputFile);
【实例截图】
【核心代码】
文件清单
└── puppeteer-sharp-0922fdaaf0479ee09fba6e69aea932b93f66fd57
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── demos
│ ├── PuppeteerSharpDemos-Local.sln
│ ├── PuppeteerSharpDemos.sln
│ └── PuppeteerSharpPdfDemo
│ ├── Program.cs
│ ├── PuppeteerSharpPdfDemo.csproj
│ └── PuppeteerSharpPdfDemo-Local.csproj
├── Directory.Build.props
├── docfx_project
│ ├── api
│ │ └── index.md
│ ├── docfx.json
│ ├── examples
│ │ ├── ChromeExtension.md
│ │ ├── DownloadFetcher.Download.md
│ │ ├── index.md
│ │ ├── LogCDPCommunication.md
│ │ ├── Page.EvaluateExpressionAsync.GetAllLinks.md
│ │ ├── Page.EvaluateFunctionAsync.ComplexJSObjects.md
│ │ ├── Page.Request.md
│ │ ├── Page.ScreenshotAsync.md
│ │ ├── Page.WaitForFunctionAsync.md
│ │ ├── Page.WaitForSelectorAsync.Searching.md
│ │ ├── ReuseChrome.md
│ │ └── toc.yml
│ ├── index.md
│ ├── readme.md
│ ├── templates
│ │ ├── build.js
│ │ ├── common
│ │ │ ├── common.js
│ │ │ ├── ManagedReference.common.js
│ │ │ ├── partials
│ │ │ │ ├── classSubtitle.tmpl.partial
│ │ │ │ └── namespaceSubtitle.tmpl.partial
│ │ │ ├── RestApi.common.js
│ │ │ └── UniversalReference.common.js
│ │ ├── custom
│ │ │ ├── conceptual.html.primary.js
│ │ │ ├── logo.svg
│ │ │ ├── ManagedReference.common.js
│ │ │ ├── partials
│ │ │ │ └── class.header.tmpl.partial
│ │ │ └── token.json
│ │ ├── default
│ │ │ ├── conceptual.extension.js
│ │ │ ├── conceptual.html.primary.js
│ │ │ ├── conceptual.html.primary.tmpl
│ │ │ ├── favicon.ico
│ │ │ ├── layout
│ │ │ │ └── _master.tmpl
│ │ │ ├── logo.svg
│ │ │ ├── ManagedReference.extension.js
│ │ │ ├── ManagedReference.html.primary.js
│ │ │ ├── ManagedReference.html.primary.tmpl
│ │ │ ├── partials
│ │ │ │ ├── affix.tmpl.partial
│ │ │ │ ├── breadcrumb.tmpl.partial
│ │ │ │ ├── class.header.tmpl.partial
│ │ │ │ ├── class.memberpage.tmpl.partial
│ │ │ │ ├── class.tmpl.partial
│ │ │ │ ├── collection.tmpl.partial
│ │ │ │ ├── customMREFContent.tmpl.partial
│ │ │ │ ├── dd-li.tmpl.partial
│ │ │ │ ├── enum.tmpl.partial
│ │ │ │ ├── footer.tmpl.partial
│ │ │ │ ├── head.tmpl.partial
│ │ │ │ ├── item.tmpl.partial
│ │ │ │ ├── li.tmpl.partial
│ │ │ │ ├── logo.tmpl.partial
│ │ │ │ ├── namespace.tmpl.partial
│ │ │ │ ├── navbar.tmpl.partial
│ │ │ │ ├── rest.child.tmpl.partial
│ │ │ │ ├── rest.definition.tmpl.partial
│ │ │ │ ├── rest.tmpl.partial
│ │ │ │ ├── scripts.tmpl.partial
│ │ │ │ ├── searchResults.tmpl.partial
│ │ │ │ ├── title.tmpl.partial
│ │ │ │ ├── toc.tmpl.partial
│ │ │ │ └── uref
│ │ │ │ ├── class.header.tmpl.partial
│ │ │ │ ├── class.tmpl.partial
│ │ │ │ ├── enum.tmpl.partial
│ │ │ │ ├── inheritance.tmpl.partial
│ │ │ │ ├── namespace.tmpl.partial
│ │ │ │ └── parameters.tmpl.partial
│ │ │ ├── Redirection.html.primary.tmpl
│ │ │ ├── RestApi.extension.js
│ │ │ ├── RestApi.html.primary.js
│ │ │ ├── RestApi.html.primary.tmpl
│ │ │ ├── search-stopwords.json
│ │ │ ├── src
│ │ │ │ ├── docfx.vendor.js
│ │ │ │ └── search-worker.js
│ │ │ ├── styles
│ │ │ │ ├── docfx.css
│ │ │ │ ├── docfx.js
│ │ │ │ ├── main.css
│ │ │ │ └── main.js
│ │ │ ├── toc.extension.js
│ │ │ ├── toc.html.primary.js
│ │ │ ├── toc.html.primary.tmpl
│ │ │ ├── toc.json.js
│ │ │ ├── toc.json.tmpl
│ │ │ ├── token.json
│ │ │ ├── UniversalReference.extension.js
│ │ │ ├── UniversalReference.html.primary.js
│ │ │ └── UniversalReference.html.primary.tmpl
│ │ ├── jest.config.js
│ │ ├── modern
│ │ │ ├── ApiPage.html.primary.js
│ │ │ ├── ApiPage.html.primary.tmpl
│ │ │ ├── layout
│ │ │ │ └── _master.tmpl
│ │ │ ├── partials
│ │ │ │ ├── class.header.tmpl.partial
│ │ │ │ ├── class.memberpage.tmpl.partial
│ │ │ │ ├── class.tmpl.partial
│ │ │ │ ├── collection.tmpl.partial
│ │ │ │ ├── customMREFContent.tmpl.partial
│ │ │ │ ├── enum.tmpl.partial
│ │ │ │ ├── item.tmpl.partial
│ │ │ │ └── namespace.tmpl.partial
│ │ │ ├── public
│ │ │ │ ├── main.css
│ │ │ │ └── main.js
│ │ │ └── src
│ │ │ ├── docfx.scss
│ │ │ ├── docfx.ts
│ │ │ ├── dotnet.scss
│ │ │ ├── helper.test.ts
│ │ │ ├── helper.ts
│ │ │ ├── highlight.scss
│ │ │ ├── highlight.ts
│ │ │ ├── layout.scss
│ │ │ ├── main.js
│ │ │ ├── markdown.scss
│ │ │ ├── markdown.ts
│ │ │ ├── mixins.scss
│ │ │ ├── nav.scss
│ │ │ ├── nav.ts
│ │ │ ├── options.d.ts
│ │ │ ├── search.scss
│ │ │ ├── search.ts
│ │ │ ├── search-worker.ts
│ │ │ ├── theme.ts
│ │ │ ├── toc.scss
│ │ │ └── toc.ts
│ │ ├── package.json
│ │ ├── package-lock.json
│ │ ├── README.md
│ │ ├── statictoc
│ │ │ ├── conceptual.html.primary.js
│ │ │ ├── ManagedReference.html.primary.js
│ │ │ ├── partials
│ │ │ │ ├── dd-li.tmpl.partial
│ │ │ │ ├── li.tmpl.partial
│ │ │ │ ├── navbar-li.tmpl.partial
│ │ │ │ ├── navbar.tmpl.partial
│ │ │ │ └── toc.tmpl.partial
│ │ │ ├── RestApi.html.primary.js
│ │ │ ├── statictoc.util.js
│ │ │ ├── toc.tmpl.js
│ │ │ └── UniversalReference.html.primary.js
│ │ └── tsconfig.json
│ └── toc.yml
├── ISSUE_TEMPLATE.md
├── lib
│ ├── Common
│ │ └── CommonProps.props
│ ├── keys
│ │ └── keypair.snk
│ ├── PuppeteerSharp
│ │ ├── AddTagOptions.cs
│ │ ├── AriaQueryOption.cs
│ │ ├── Binding.cs
│ │ ├── BindingUtils.cs
│ │ ├── BoundingBox.cs
│ │ ├── BoxModel.cs
│ │ ├── BoxModelPoint.cs
│ │ ├── BrowserContext.cs
│ │ ├── BrowserContextOptions.cs
│ │ ├── Browser.cs
│ │ ├── BrowserData
│ │ │ ├── Cache.cs
│ │ │ ├── Chrome.cs
│ │ │ ├── ChromeGoodVersionsResult.cs
│ │ │ ├── ChromeHeadlessShell.cs
│ │ │ ├── ChromeReleaseChannel.cs
│ │ │ ├── Chromium.cs
│ │ │ ├── Firefox.cs
│ │ │ ├── InstalledBrowser.cs
│ │ │ └── JsonUtils.cs
│ │ ├── BrowserFetcher.cs
│ │ ├── BrowserFetcherOptions.cs
│ │ ├── BrowserTag.cs
│ │ ├── BufferException.cs
│ │ ├── Cdp
│ │ │ ├── CdpBrowserContext.cs
│ │ │ ├── CdpBrowser.cs
│ │ │ ├── CdpCDPSession.cs
│ │ │ ├── CdpDevToolsTarget.cs
│ │ │ ├── CdpDialog.cs
│ │ │ ├── CdpElementHandle.cs
│ │ │ ├── CdpFrame.cs
│ │ │ ├── CdpHttpRequest.cs
│ │ │ ├── CdpHttpResponse.cs
│ │ │ ├── CdpJSHandle.cs
│ │ │ ├── CdpKeyboard.cs
│ │ │ ├── CdpMouse.cs
│ │ │ ├── CdpOtherTarget.cs
│ │ │ ├── CdpPage.cs
│ │ │ ├── CdpPageTarget.cs
│ │ │ ├── CdpTarget.cs
│ │ │ ├── CdpTouchscreen.cs
│ │ │ ├── CdpWebWorker.cs
│ │ │ ├── CdpWorkerTarget.cs
│ │ │ ├── ChromeTargetManager.cs
│ │ │ ├── Connection.cs
│ │ │ ├── FirefoxTargetManager.cs
│ │ │ ├── FrameManager.cs
│ │ │ ├── FrameTree.cs
│ │ │ ├── IFrameProvider.cs
│ │ │ ├── ITargetManager.cs
│ │ │ ├── LifecycleWatcher.cs
│ │ │ ├── Messaging
│ │ │ │ ├── AccessibilityGetFullAXTreeResponse.cs
│ │ │ │ ├── AccessibilityQueryAXTreeRequest.cs
│ │ │ │ ├── AccessibilityQueryAXTreeResponse.cs
│ │ │ │ ├── BasicFrameResponse.cs
│ │ │ │ ├── BindingCalledResponse.cs
│ │ │ │ ├── BrowserGetVersionResponse.cs
│ │ │ │ ├── BrowserGrantPermissionsRequest.cs
│ │ │ │ ├── BrowserResetPermissionsRequest.cs
│ │ │ │ ├── CertificateErrorResponse.cs
│ │ │ │ ├── ConnectionError.cs
│ │ │ │ ├── ConnectionRequest.cs
│ │ │ │ ├── ConnectionResponse.cs
│ │ │ │ ├── ConnectionResponseParams.cs
│ │ │ │ ├── ContinueWithAuthRequestChallengeResponse.cs
│ │ │ │ ├── ContinueWithAuthRequest.cs
│ │ │ │ ├── CreateBrowserContextResponse.cs
│ │ │ │ ├── CssGetStyleSheetTextRequest.cs
│ │ │ │ ├── CssGetStyleSheetTextResponse.cs
│ │ │ │ ├── CSSStopRuleUsageTrackingResponse.cs
│ │ │ │ ├── CSSStyleSheetAddedResponse.cs
│ │ │ │ ├── DebuggerGetScriptSourceRequest.cs
│ │ │ │ ├── DebuggerGetScriptSourceResponse.cs
│ │ │ │ ├── DebuggerScriptParsedResponse.cs
│ │ │ │ ├── DebuggerSetSkipAllPausesRequest.cs
│ │ │ │ ├── DeviceAccessCancelPrompt.cs
│ │ │ │ ├── DeviceAccessDeviceRequestPromptedResponse.cs
│ │ │ │ ├── DeviceAccessSelectPrompt.cs
│ │ │ │ ├── DispatchKeyEventType.cs
│ │ │ │ ├── DomDescribeNodeRequest.cs
│ │ │ │ ├── DomDescribeNodeResponse.cs
│ │ │ │ ├── DomGetBoxModelRequest.cs
│ │ │ │ ├── DomGetBoxModelResponse.cs
│ │ │ │ ├── DomGetContentQuadsRequest.cs
│ │ │ │ ├── DomGetFrameOwnerRequest.cs
│ │ │ │ ├── DomGetFrameOwnerResponse.cs
│ │ │ │ ├── DomResolveNodeRequest.cs
│ │ │ │ ├── DomResolveNodeResponse.cs
│ │ │ │ ├── DomScrollIntoViewIfNeededRequest.cs
│ │ │ │ ├── DomSetFileInputFilesRequest.cs
│ │ │ │ ├── DragEventType.cs
│ │ │ │ ├── EmulateTimezoneRequest.cs
│ │ │ │ ├── EmulationSetCPUThrottlingRateRequest.cs
│ │ │ │ ├── EmulationSetDefaultBackgroundColorOverrideColor.cs
│ │ │ │ ├── EmulationSetDefaultBackgroundColorOverrideRequest.cs
│ │ │ │ ├── EmulationSetDeviceMetricsOverrideRequest.cs
│ │ │ │ ├── EmulationSetEmulatedMediaFeatureRequest.cs
│ │ │ │ ├── EmulationSetEmulatedMediaTypeRequest.cs
│ │ │ │ ├── EmulationSetEmulatedVisionDeficiencyRequest.cs
│ │ │ │ ├── EmulationSetIdleOverrideRequest.cs
│ │ │ │ ├── EmulationSetScriptExecutionDisabledRequest.cs
│ │ │ │ ├── EmulationSetTouchEmulationEnabledRequest.cs
│ │ │ │ ├── EvaluateExceptionResponseDetails.cs
│ │ │ │ ├── EvaluateExceptionResponseInfo.cs
│ │ │ │ ├── EvaluateExceptionResponseStackTrace.cs
│ │ │ │ ├── EvaluateHandleResponse.cs
│ │ │ │ ├── EvaluationExceptionResponseCallFrame.cs
│ │ │ │ ├── FetchAuthRequiredResponse.cs
│ │ │ │ ├── FetchContinueRequestRequest.cs
│ │ │ │ ├── FetchEnableRequest.cs
│ │ │ │ ├── FetchFailRequest.cs
│ │ │ │ ├── FetchFulfillRequest.cs
│ │ │ │ ├── FetchRequestPausedResponse.cs
│ │ │ │ ├── FileChooserAction.cs
│ │ │ │ ├── GetBrowserContextsResponse.cs
│ │ │ │ ├── GetContentQuadsResponse.cs
│ │ │ │ ├── Header.cs
│ │ │ │ ├── InputDispatchDragEventRequest.cs
│ │ │ │ ├── InputDispatchKeyEventRequest.cs
│ │ │ │ ├── InputDispatchMouseEventRequest.cs
│ │ │ │ ├── InputDispatchTouchEventRequest.cs
│ │ │ │ ├── InputInsertTextRequest.cs
│ │ │ │ ├── InputSetInterceptDragsRequest.cs
│ │ │ │ ├── IOCloseRequest.cs
│ │ │ │ ├── IOReadRequest.cs
│ │ │ │ ├── IOReadResponse.cs
│ │ │ │ ├── LifecycleEventResponse.cs
│ │ │ │ ├── LoadingFailedEventResponse.cs
│ │ │ │ ├── LoadingFinishedEventResponse.cs
│ │ │ │ ├── LogEntryAddedResponse.cs
│ │ │ │ ├── MouseEventType.cs
│ │ │ │ ├── NavigatedWithinDocumentResponse.cs
│ │ │ │ ├── NavigationType.cs
│ │ │ │ ├── NetworkEmulateNetworkConditionsRequest.cs
│ │ │ │ ├── NetworkGetCookiesRequest.cs
│ │ │ │ ├── NetworkGetCookiesResponse.cs
│ │ │ │ ├── NetworkGetResponseBodyRequest.cs
│ │ │ │ ├── NetworkGetResponseBodyResponse.cs
│ │ │ │ ├── NetworkSetCacheDisabledRequest.cs
│ │ │ │ ├── NetworkSetCookiesRequest.cs
│ │ │ │ ├── NetworkSetExtraHTTPHeadersRequest.cs
│ │ │ │ ├── NetworkSetUserAgentOverrideRequest.cs
│ │ │ │ ├── PageAddScriptToEvaluateOnNewDocumentRequest.cs
│ │ │ │ ├── PageAddScriptToEvaluateOnNewDocumentResponse.cs
│ │ │ │ ├── PageCaptureScreenshotRequest.cs
│ │ │ │ ├── PageCaptureScreenshotResponse.cs
│ │ │ │ ├── PageConsoleResponse.cs
│ │ │ │ ├── PageCreateIsolatedWorldRequest.cs
│ │ │ │ ├── PageFileChooserOpenedResponse.cs
│ │ │ │ ├── PageFrameAttachedResponse.cs
│ │ │ │ ├── PageFrameDetachedResponse.cs
│ │ │ │ ├── PageFrameNavigatedResponse.cs
│ │ │ │ ├── PageGetFrameTree.cs
│ │ │ │ ├── PageGetFrameTreeResponse.cs
│ │ │ │ ├── PageGetLayoutMetricsResponse.cs
│ │ │ │ ├── PageGetNavigationHistoryResponse.cs
│ │ │ │ ├── PageHandleFileChooserRequest.cs
│ │ │ │ ├── PageHandleJavaScriptDialogRequest.cs
│ │ │ │ ├── PageJavascriptDialogOpeningResponse.cs
│ │ │ │ ├── PageNavigateRequest.cs
│ │ │ │ ├── PageNavigateResponse.cs
│ │ │ │ ├── PageNavigateToHistoryEntryRequest.cs
│ │ │ │ ├── PagePrintToPDFRequest.cs
│ │ │ │ ├── PagePrintToPDFResponse.cs
│ │ │ │ ├── PageReloadRequest.cs
│ │ │ │ ├── PageRemoveScriptToEvaluateOnNewDocumentRequest.cs
│ │ │ │ ├── PageSetBypassCSPRequest.cs
│ │ │ │ ├── PageSetInterceptFileChooserDialog.cs
│ │ │ │ ├── PageSetLifecycleEventsEnabledRequest.cs
│ │ │ │ ├── PerformanceGetMetricsResponse.cs
│ │ │ │ ├── PerformanceMetricsResponse.cs
│ │ │ │ ├── ProfilerStartPreciseCoverageRequest.cs
│ │ │ │ ├── ProfilerTakePreciseCoverageResponse.cs
│ │ │ │ ├── Protocol
│ │ │ │ │ └── Network
│ │ │ │ │ ├── GetRequestPostDataRequest.cs
│ │ │ │ │ ├── GetRequestPostDataResponse.cs
│ │ │ │ │ └── SetBypassServiceWorkerRequest.cs
│ │ │ │ ├── RemoteObject.cs
│ │ │ │ ├── RemoteObjectSubtype.cs
│ │ │ │ ├── RemoteObjectType.cs
│ │ │ │ ├── RequestServedFromCacheResponse.cs
│ │ │ │ ├── RequestWillBeSentPayload.cs
│ │ │ │ ├── ResponsePayload.cs
│ │ │ │ ├── ResponseReceivedExtraInfoResponse.cs
│ │ │ │ ├── ResponseReceivedResponse.cs
│ │ │ │ ├── RuntimeAddBindingRequest.cs
│ │ │ │ ├── RuntimeCallFunctionOnRequestArgument.cs
│ │ │ │ ├── RuntimeCallFunctionOnRequest.cs
│ │ │ │ ├── RuntimeCallFunctionOnResponse.cs
│ │ │ │ ├── RuntimeEvaluateRequest.cs
│ │ │ │ ├── RuntimeExceptionThrownResponse.cs
│ │ │ │ ├── RuntimeExecutionContextCreatedResponse.cs
│ │ │ │ ├── RuntimeExecutionContextDestroyedResponse.cs
│ │ │ │ ├── RuntimeGetPropertiesRequest.cs
│ │ │ │ ├── RuntimeGetPropertiesResponse.cs
│ │ │ │ ├── RuntimeQueryObjectsRequest.cs
│ │ │ │ ├── RuntimeQueryObjectsResponse.cs
│ │ │ │ ├── RuntimeReleaseObjectRequest.cs
│ │ │ │ ├── RuntimeRemoveBindingRequest.cs
│ │ │ │ ├── SecurityHandleCertificateErrorResponse.cs
│ │ │ │ ├── SecuritySetIgnoreCertificateErrorsRequest.cs
│ │ │ │ ├── SecuritySetOverrideCertificateErrorsRequest.cs
│ │ │ │ ├── StackTrace.cs
│ │ │ │ ├── StackTraceId.cs
│ │ │ │ ├── TargetActivateTargetRequest.cs
│ │ │ │ ├── TargetAttachedToTargetResponse.cs
│ │ │ │ ├── TargetAttachToTargetRequest.cs
│ │ │ │ ├── TargetAttachToTargetResponse.cs
│ │ │ │ ├── TargetCloseTargetRequest.cs
│ │ │ │ ├── TargetCreateBrowserContextRequest.cs
│ │ │ │ ├── TargetCreatedResponse.cs
│ │ │ │ ├── TargetCreateTargetRequest.cs
│ │ │ │ ├── TargetCreateTargetResponse.cs
│ │ │ │ ├── TargetDestroyedResponse.cs
│ │ │ │ ├── TargetDetachedFromTargetResponse.cs
│ │ │ │ ├── TargetDetachFromTargetRequest.cs
│ │ │ │ ├── TargetDisposeBrowserContextRequest.cs
│ │ │ │ ├── TargetSendMessageToTargetRequest.cs
│ │ │ │ ├── TargetSetAutoAttachRequest.cs
│ │ │ │ ├── TargetSetDiscoverTargetsRequest.cs
│ │ │ │ ├── TracingCompleteResponse.cs
│ │ │ │ ├── TracingStartRequest.cs
│ │ │ │ └── WSEndpointResponse.cs
│ │ │ ├── NetworkEventManager.cs
│ │ │ └── NetworkManager.cs
│ │ ├── CDPSession.cs
│ │ ├── ChromeLauncher.cs
│ │ ├── ChromiumProcessException.cs
│ │ ├── CommandOptions.cs
│ │ ├── ConnectOptions.cs
│ │ ├── ConsoleEventArgs.cs
│ │ ├── ConsoleMessage.cs
│ │ ├── ConsoleMessageLocation.cs
│ │ ├── ConsoleType.cs
│ │ ├── ContextPayloadAuxData.cs
│ │ ├── ContextPayload.cs
│ │ ├── CookieParam.cs
│ │ ├── CookiePriority.cs
│ │ ├── CookieSourceScheme.cs
│ │ ├── Credentials.cs
│ │ ├── CustomQueryHandler.cs
│ │ ├── DeviceRequestPrompt.cs
│ │ ├── DeviceRequestPromptDevice.cs
│ │ ├── DeviceRequestPromptManager.cs
│ │ ├── Dialog.cs
│ │ ├── DialogEventArgs.cs
│ │ ├── DialogType.cs
│ │ ├── DisposableActionsStack.cs
│ │ ├── DisposableTasksStack.cs
│ │ ├── DOMWorldType.cs
│ │ ├── DragData.cs
│ │ ├── DragDataItem.cs
│ │ ├── DragOperation.cs
│ │ ├── ElementHandle.cs
│ │ ├── ElementScreenshotOptions.cs
│ │ ├── EmulateIdleOverrides.cs
│ │ ├── EmulationManager.cs
│ │ ├── ErrorEventArgs.cs
│ │ ├── EvaluationFailedException.cs
│ │ ├── ExecutionContext.cs
│ │ ├── FileChooser.cs
│ │ ├── FirefoxLauncher.cs
│ │ ├── Frame.cs
│ │ ├── FrameEventArgs.cs
│ │ ├── FrameNavigatedEventArgs.cs
│ │ ├── FramePayload.cs
│ │ ├── GeolocationOption.cs
│ │ ├── HeadlessMode.cs
│ │ ├── Helpers
│ │ │ ├── AsyncDictionaryHelper.cs
│ │ │ ├── AsyncFileHelper.cs
│ │ │ ├── AsyncMessageQueue.cs
│ │ │ ├── ConcurrentSet.cs
│ │ │ ├── DeferredTaskQueue.cs
│ │ │ ├── DictionaryExtensions.cs
│ │ │ ├── Json
│ │ │ │ ├── FlexibleStringEnumConverter.cs
│ │ │ │ ├── HttpMethodConverter.cs
│ │ │ │ ├── JSHandleMethodConverter.cs
│ │ │ │ ├── JsonHelper.cs
│ │ │ │ └── JTokenExtensions.cs
│ │ │ ├── Linux
│ │ │ │ ├── FileAccessPermissions.cs
│ │ │ │ └── LinuxSysCall.cs
│ │ │ ├── MultiMap.cs
│ │ │ ├── ProtocolStreamReader.cs
│ │ │ ├── RemoteObjectHelper.cs
│ │ │ ├── StringExtensions.cs
│ │ │ ├── TaskHelper.cs
│ │ │ ├── TaskQueue.cs
│ │ │ └── TempDirectory.cs
│ │ ├── IBrowserContext.cs
│ │ ├── IBrowser.cs
│ │ ├── IBrowserFetcher.cs
│ │ ├── IBrowserOptions.cs
│ │ ├── ICDPConnection.cs
│ │ ├── ICDPSession.cs
│ │ ├── IConnectionOptions.cs
│ │ ├── IElementHandle.cs
│ │ ├── IEnvironment.cs
│ │ ├── IExecutionContext.cs
│ │ ├── IFrame.cs
│ │ ├── IJSHandle.cs
│ │ ├── InitializationStatus.cs
│ │ ├── Initiator.cs
│ │ ├── InitiatorType.cs
│ │ ├── Injected
│ │ │ ├── injected.js
│ │ │ └── README.md
│ │ ├── Input
│ │ │ ├── ClickOptions.cs
│ │ │ ├── DownOptions.cs
│ │ │ ├── IKeyboard.cs
│ │ │ ├── IMouse.cs
│ │ │ ├── ITouchscreen.cs
│ │ │ ├── Keyboard.cs
│ │ │ ├── Key.cs
│ │ │ ├── KeyDefinition.cs
│ │ │ ├── KeyDefinitions.cs
│ │ │ ├── MouseButton.cs
│ │ │ ├── Mouse.cs
│ │ │ ├── MouseState.cs
│ │ │ ├── MouseTransaction.cs
│ │ │ ├── MoveOptions.cs
│ │ │ ├── PointerType.cs
│ │ │ ├── PressOptions.cs
│ │ │ ├── TouchPoint.cs
│ │ │ ├── Touchscreen.cs
│ │ │ └── TypeOptions.cs
│ │ ├── InterceptResolutionAction.cs
│ │ ├── InterceptResolutionState.cs
│ │ ├── InternalNetworkConditions.cs
│ │ ├── InvalidTargetException.cs
│ │ ├── IPage.cs
│ │ ├── IRequest.cs
│ │ ├── IResponse.cs
│ │ ├── IsExternalInit.cs
│ │ ├── IsolatedWorld.cs
│ │ ├── ITarget.cs
│ │ ├── ITracing.cs
│ │ ├── JSHandle.cs
│ │ ├── LauncherBase.cs
│ │ ├── Launcher.cs
│ │ ├── LaunchOptions.cs
│ │ ├── Media
│ │ │ ├── Clip.cs
│ │ │ ├── MarginOptions.cs
│ │ │ ├── MediaType.cs
│ │ │ ├── PaperFormat.cs
│ │ │ ├── ScreenOrientation.cs
│ │ │ └── ScreenOrientationType.cs
│ │ ├── MediaFeature.cs
│ │ ├── MediaFeatureValue.cs
│ │ ├── MessageEventArgs.cs
│ │ ├── MessageException.cs
│ │ ├── MessageTask.cs
│ │ ├── Metric.cs
│ │ ├── MetricEventArgs.cs
│ │ ├── Mobile
│ │ │ ├── DeviceDescriptor.cs
│ │ │ ├── DeviceDescriptorName.cs
│ │ │ └── DeviceDescriptors.cs
│ │ ├── NavigationException.cs
│ │ ├── NavigationOptions.cs
│ │ ├── NetworkConditions.cs
│ │ ├── NewDocumentScriptEvaluation.cs
│ │ ├── Offset.cs
│ │ ├── OverridePermission.cs
│ │ ├── PageAccessibility
│ │ │ ├── Accessibility.cs
│ │ │ ├── AccessibilitySnapshotOptions.cs
│ │ │ ├── AXNode.cs
│ │ │ ├── CheckedState.cs
│ │ │ ├── IAccessibility.cs
│ │ │ └── SerializedAXNode.cs
│ │ ├── PageBinding.cs
│ │ ├── PageCloseOptions.cs
│ │ ├── PageCoverage
│ │ │ ├── Coverage.cs
│ │ │ ├── CoverageEntry.cs
│ │ │ ├── CoverageEntryPoint.cs
│ │ │ ├── CoverageEntryRange.cs
│ │ │ ├── CoverageRange.cs
│ │ │ ├── CoverageStartOptions.cs
│ │ │ ├── CSSCoverage.cs
│ │ │ ├── FunctionCoverage.cs
│ │ │ ├── ICoverage.cs
│ │ │ ├── JSCoverage.cs
│ │ │ ├── JSCoverageEntry.cs
│ │ │ └── ScriptCoverage.cs
│ │ ├── Page.cs
│ │ ├── PageErrorEventArgs.cs
│ │ ├── Payload.cs
│ │ ├── PdfOptions.cs
│ │ ├── Platform.cs
│ │ ├── Point.cs
│ │ ├── PopupEventArgs.cs
│ │ ├── PredefinedNetworkConditions.cs
│ │ ├── ProcessException.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── Puppeteer.cs
│ │ ├── PuppeteerException.cs
│ │ ├── PuppeteerHandleExtensions.cs
│ │ ├── PuppeteerSharp.csproj
│ │ ├── QueryHandlers
│ │ │ ├── AriaQueryHandler.cs
│ │ │ ├── CssQueryHandler.cs
│ │ │ ├── CustomQuerySelectorRegistry.cs
│ │ │ ├── PierceQueryHandler.cs
│ │ │ ├── QueryHandler.cs
│ │ │ ├── TextQueryHandler.cs
│ │ │ └── XPathQueryHandler.cs
│ │ ├── QueuedEventGroup.cs
│ │ ├── Realm.cs
│ │ ├── RedirectInfo.cs
│ │ ├── RemoteAddress.cs
│ │ ├── RequestAbortErrorCode.cs
│ │ ├── Request.cs
│ │ ├── RequestEventArgs.cs
│ │ ├── ResourceType.cs
│ │ ├── ResponseCreatedEventArgs.cs
│ │ ├── Response.cs
│ │ ├── ResponseData.cs
│ │ ├── SameSite.cs
│ │ ├── ScreenshotOptions.cs
│ │ ├── ScreenshotType.cs
│ │ ├── ScriptInjector.cs
│ │ ├── SecurityDetails.cs
│ │ ├── SelectorException.cs
│ │ ├── SessionEventArgs.cs
│ │ ├── States
│ │ │ ├── DisposedState.cs
│ │ │ ├── ExitedState.cs
│ │ │ ├── ExitingState.cs
│ │ │ ├── InitialState.cs
│ │ │ ├── KillingState.cs
│ │ │ ├── ProcessStartingState.cs
│ │ │ ├── StartedState.cs
│ │ │ ├── State.cs
│ │ │ └── StateManager.cs
│ │ ├── SupportedBrowser.cs
│ │ ├── TargetChangedArgs.cs
│ │ ├── TargetClosedException.cs
│ │ ├── TargetCrashedException.cs
│ │ ├── Target.cs
│ │ ├── TargetInfo.cs
│ │ ├── TargetType.cs
│ │ ├── TaskManager.cs
│ │ ├── TimeoutSettings.cs
│ │ ├── Tracing.cs
│ │ ├── TracingOptions.cs
│ │ ├── Transport
│ │ │ ├── IConnectionTransport.cs
│ │ │ ├── MessageReceivedEventArgs.cs
│ │ │ ├── TransportClosedEventArgs.cs
│ │ │ ├── TransportFactory.cs
│ │ │ ├── TransportTaskScheduler.cs
│ │ │ ├── WebSocketFactory.cs
│ │ │ └── WebSocketTransport.cs
│ │ ├── UserAgentBrandVersion.cs
│ │ ├── UserAgentMetadata.cs
│ │ ├── ViewPortOptions.cs
│ │ ├── VisionDeficiency.cs
│ │ ├── WaitForFunctionOptions.cs
│ │ ├── WaitForFunctionPollingOption.cs
│ │ ├── WaitForNetworkIdleOptions.cs
│ │ ├── WaitForOptions.cs
│ │ ├── WaitForSelectorOptions.cs
│ │ ├── WaitTask.cs
│ │ ├── WaitTaskTimeoutException.cs
│ │ ├── WaitUntilNavigation.cs
│ │ ├── WebWorker.cs
│ │ └── WorkerEventArgs.cs
│ ├── PuppeteerSharp.AspNetFramework
│ │ ├── AspNetWebSocketTransport.cs
│ │ └── PuppeteerSharp.AspNetFramework.csproj
│ ├── PuppeteerSharp.AspNetFramework.sln
│ ├── PuppeteerSharp.DevicesFetcher
│ │ ├── Device.cs
│ │ ├── Program.cs
│ │ ├── PuppeteerSharp.DevicesFetcher.csproj
│ │ └── ViewPort.cs
│ ├── PuppeteerSharp.Nunit
│ │ ├── PuppeteerSharp.Nunit.csproj
│ │ ├── PuppeteerTestAttribute.cs
│ │ └── TestExpectations
│ │ ├── TestExpectation.cs
│ │ ├── TestExpectations.local.json
│ │ └── TestExpectations.upstream.json
│ ├── PuppeteerSharp.sln
│ ├── PuppeteerSharp.Tests
│ │ ├── AccessibilityTests
│ │ │ ├── AccessibilityTests.cs
│ │ │ └── RootOptionTests.cs
│ │ ├── AriaQueryHandlerTests
│ │ │ ├── ParseAriaSelectorTests.cs
│ │ │ ├── QueryAllArrayTests.cs
│ │ │ ├── QueryAllTests.cs
│ │ │ ├── QueryOneTests.cs
│ │ │ └── WaitForSelectorAriaTests.cs
│ │ ├── Assets
│ │ │ ├── es6
│ │ │ │ ├── es6import.js
│ │ │ │ ├── es6module.js
│ │ │ │ └── es6pathimport.js
│ │ │ ├── file-to-upload.txt
│ │ │ ├── injectedfile.js
│ │ │ ├── injectedstyle.css
│ │ │ ├── one-style.css
│ │ │ ├── one-style.html
│ │ │ ├── pptr.png
│ │ │ └── simple-extension
│ │ │ ├── content-script.js
│ │ │ ├── index.js
│ │ │ └── manifest.json
│ │ ├── BFCacheTests
│ │ │ └── BFCacheTests.cs
│ │ ├── BrowserContextTests
│ │ │ ├── BrowserContextOverridePermissionsTests.cs
│ │ │ ├── BrowserContextTests.cs
│ │ │ └── DefaultBrowserContextTests.cs
│ │ ├── Browsers
│ │ │ ├── Chrome
│ │ │ │ ├── ChromeDataTests.cs
│ │ │ │ └── CliTests.cs
│ │ │ ├── Chromium
│ │ │ │ └── ChromiumDataTests.cs
│ │ │ └── Firefox
│ │ │ ├── CliTests.cs
│ │ │ └── FirefoxDataTests.cs
│ │ ├── BrowserTests
│ │ │ ├── BrowserVersionTests.cs
│ │ │ ├── IsConnectedTests.cs
│ │ │ ├── ProcessTests.cs
│ │ │ ├── TargetTests.cs
│ │ │ └── UserAgentTests.cs
│ │ ├── CDPSessionTests
│ │ │ └── CreateCDPSessionTests.cs
│ │ ├── ChromeLauncherTests
│ │ │ ├── GetFeaturesTests.cs
│ │ │ └── RemoveMatchingFlagsTests.cs
│ │ ├── ChromiumOnlyTests
│ │ │ ├── BrowserUrlOptionTests.cs
│ │ │ └── PageTests.cs
│ │ ├── ClickTests
│ │ │ └── ClickTests.cs
│ │ ├── CookiesTests
│ │ │ ├── CookiesTests.cs
│ │ │ ├── DeleteCookiesTests.cs
│ │ │ └── SetCookiesTests.cs
│ │ ├── CoverageTests
│ │ │ ├── CSSCoverageTests.cs
│ │ │ ├── CSSResetOnNavigationTests.cs
│ │ │ ├── IncludeRawScriptCoverageTests.cs
│ │ │ ├── JSCoverageTests.cs
│ │ │ └── JSResetOnNavigationTests.cs
│ │ ├── DeviceRequestPromptTests
│ │ │ ├── DeviceRequestPromptCancelTests.cs
│ │ │ ├── DeviceRequestPromptDevicesTests.cs
│ │ │ ├── DeviceRequestPromptSelectTests.cs
│ │ │ ├── DeviceRequestPromptWaitForDeviceTests.cs
│ │ │ ├── MockCDPSession.cs
│ │ │ └── WaitForDevicePromptTests.cs
│ │ ├── DevtoolsTests
│ │ │ └── DevtoolsTests.cs
│ │ ├── DialogTests
│ │ │ └── DialogTests.cs
│ │ ├── DragAndDropTests
│ │ │ ├── DragAndDropTests.cs
│ │ │ └── LegacyDragAndDropTests.cs
│ │ ├── ElementHandleTests
│ │ │ ├── BoundingBoxTests.cs
│ │ │ ├── BoxModelTests.cs
│ │ │ ├── ClickTests.cs
│ │ │ ├── ContentFrameTests.cs
│ │ │ ├── CustomQueriesTests.cs
│ │ │ ├── HoverTests.cs
│ │ │ ├── IsIntersectingViewportTests.cs
│ │ │ └── IsVisibleIsHiddenTests.cs
│ │ ├── EmulationTests
│ │ │ ├── EmulateMediaFeaturesTests.cs
│ │ │ ├── EmulateMediaTypeTests.cs
│ │ │ ├── EmulateTests.cs
│ │ │ ├── EmulateTimezoneTests.cs
│ │ │ ├── PageEmulateCPUThrottlingTests.cs
│ │ │ ├── PageEmulateNetworkConditionsTests.cs
│ │ │ ├── PageEmulateVisionDeficiencyTests.cs
│ │ │ └── PageViewPortTests.cs
│ │ ├── EvaluationTests
│ │ │ ├── FrameEvaluateTests.cs
│ │ │ ├── PageEvaluateOnNewDocumentTests.cs
│ │ │ ├── PageEvaluateTests.cs
│ │ │ └── RemoveScriptToEvaluateOnNewDocumentTests.cs
│ │ ├── ExtensionsTests
│ │ │ └── ExtensionsTests.cs
│ │ ├── FixturesTests
│ │ │ └── FixturesTests.cs
│ │ ├── FrameTests
│ │ │ ├── EvaluateHandleTests.cs
│ │ │ ├── FrameEvaluateTests.cs
│ │ │ └── FrameManagementTests.cs
│ │ ├── FrameUtils.cs
│ │ ├── HeadfulTests
│ │ │ └── HeadfulTests.cs
│ │ ├── IdleOverrideTests
│ │ │ └── IdleOverrideTests.cs
│ │ ├── IgnoreHttpsErrorsTests
│ │ │ ├── IgnoreHttpsErrorsTests.cs
│ │ │ └── ResponseSecurityDetailsTests.cs
│ │ ├── InjectedTests
│ │ │ └── InjectedTests.cs
│ │ ├── InputTests
│ │ │ ├── FileChooserAcceptTests.cs
│ │ │ ├── FileChooserCancelTests.cs
│ │ │ ├── FileChooserIsMultipleTests.cs
│ │ │ ├── InputTests.cs
│ │ │ └── PageWaitForFileChooserTests.cs
│ │ ├── Issues
│ │ │ ├── Issue0100.cs
│ │ │ ├── Issue0128.cs
│ │ │ ├── Issue0343.cs
│ │ │ ├── Issue0616.cs
│ │ │ ├── Issue0648.cs
│ │ │ ├── Issue0764.cs
│ │ │ ├── Issue1354.cs
│ │ │ ├── Issue1447.cs
│ │ │ ├── Issue1878.cs
│ │ │ ├── Issue1895.cs
│ │ │ └── Issue 2251.cs
│ │ ├── JSHandleTests
│ │ │ ├── AsElementTests.cs
│ │ │ ├── ClickablePointTests.cs
│ │ │ ├── GetPropertiesTests.cs
│ │ │ ├── GetPropertyTests.cs
│ │ │ ├── JsonValueTests.cs
│ │ │ ├── PageEvaluateHandle.cs
│ │ │ └── ToStringTests.cs
│ │ ├── KeyboardTests
│ │ │ └── KeyboardTests.cs
│ │ ├── LauncherTests
│ │ │ ├── BrowserCloseTests.cs
│ │ │ ├── BrowserDisconnectTests.cs
│ │ │ ├── BrowserEventsDisconnectedTests.cs
│ │ │ ├── BrowserTargetEventsTests.cs
│ │ │ ├── PuppeteerConnectTests.cs
│ │ │ └── PuppeteerLaunchTests.cs
│ │ ├── LaunchOptionsTests.cs
│ │ ├── MouseTests
│ │ │ ├── Dimensions.cs
│ │ │ └── MouseTests.cs
│ │ ├── NavigationTests
│ │ │ ├── FrameGoToTests.cs
│ │ │ ├── FrameWaitForNavigationTests.cs
│ │ │ ├── PageGoBackTests.cs
│ │ │ ├── PageGotoTests.cs
│ │ │ ├── PageReloadTests.cs
│ │ │ └── PageWaitForNavigationTests.cs
│ │ ├── NetworkManagerTests
│ │ │ └── NetworkManagerTests.cs
│ │ ├── NetworkTests
│ │ │ ├── NetworkEventTests.cs
│ │ │ ├── PageAuthenticateTests.cs
│ │ │ ├── PageEventRequestTests.cs
│ │ │ ├── PageSetBypassServiceWorkerTests.cs
│ │ │ ├── PageSetExtraHttpHeadersTests.cs
│ │ │ ├── RequestFrameTests.cs
│ │ │ ├── RequestHeadersTests.cs
│ │ │ ├── RequestIsNavigationRequestTests.cs
│ │ │ ├── RequestPostDataTests.cs
│ │ │ ├── ResponseBufferTests.cs
│ │ │ ├── ResponseFromCacheTests.cs
│ │ │ ├── ResponseFromServiceWorkerTests.cs
│ │ │ ├── ResponseHeadersTests.cs
│ │ │ ├── ResponseJsonTests.cs
│ │ │ ├── ResponseStatusTextTests.cs
│ │ │ └── ResponseTextTests.cs
│ │ ├── OOPIFTests
│ │ │ └── OOPIFTests.cs
│ │ ├── PageExtensions.cs
│ │ ├── PageTests
│ │ │ ├── AddScriptTagTests.cs
│ │ │ ├── AddStyleTagTests.cs
│ │ │ ├── BrowserContextTests.cs
│ │ │ ├── BrowserTests.cs
│ │ │ ├── CloseTests.cs
│ │ │ ├── ExposeFunctionTests.cs
│ │ │ ├── GeolocationTests.cs
│ │ │ ├── MetricsTests.cs
│ │ │ ├── OfflineModeTests.cs
│ │ │ ├── PageBringToFrontTests.cs
│ │ │ ├── PageEventsCloseTests.cs
│ │ │ ├── PageEventsConsoleTests.cs
│ │ │ ├── PageEventsDOMContentLoadedTests.cs
│ │ │ ├── PageEventsErrorTests.cs
│ │ │ ├── PageEventsLoadTests.cs
│ │ │ ├── PageEventsPageErrorTests.cs
│ │ │ ├── PageEventsPopupTests.cs
│ │ │ ├── PdfTests.cs
│ │ │ ├── RemoveExposedFunctionTests.cs
│ │ │ ├── SelectTests.cs
│ │ │ ├── SetBypassCSPTests.cs
│ │ │ ├── SetCacheEnabledTests.cs
│ │ │ ├── SetContentTests.cs
│ │ │ ├── SetJavaScriptEnabledTests.cs
│ │ │ ├── SetUserAgentTests.cs
│ │ │ ├── TitleTests.cs
│ │ │ ├── UrlTests.cs
│ │ │ ├── WaitForNetworkIdleTests.cs
│ │ │ ├── WaitForRequestTests.cs
│ │ │ └── WaitForResponseTests.cs
│ │ ├── PollerInterceptor.cs
│ │ ├── PrerenderTests
│ │ │ ├── PrerenderTests.cs
│ │ │ ├── ViaFrameTests.cs
│ │ │ ├── WithEmulationTests.cs
│ │ │ └── WithNetworkRequestsTests.cs
│ │ ├── PublishSingleFileTests
│ │ │ └── PublishSingleFileTests.cs
│ │ ├── PuppeteerBaseTest.cs
│ │ ├── PuppeteerBrowserBaseTest.cs
│ │ ├── PuppeteerBrowserContextBaseTest.cs
│ │ ├── PuppeteerPageBaseTest.cs
│ │ ├── PuppeteerSharp.Tests.csproj
│ │ ├── QueryHandlerTests
│ │ │ ├── PierceSelectorTests.cs
│ │ │ └── TextSelectorTests
│ │ │ ├── TextSelectorInElementHandlesTests.cs
│ │ │ └── TextSelectorInPageTests.cs
│ │ ├── QueryObjectsTests
│ │ │ └── QueryObjectsTests.cs
│ │ ├── QuerySelectorTests
│ │ │ ├── ElementHandleQuerySelectorAllEvalTests.cs
│ │ │ ├── ElementHandleQuerySelectorAllTests.cs
│ │ │ ├── ElementHandleQuerySelectorEvalTests.cs
│ │ │ ├── ElementHandleQuerySelectorTests.cs
│ │ │ ├── PageQuerySelectorAllEvalTests.cs
│ │ │ ├── PageQuerySelectorAllTests.cs
│ │ │ ├── PageQuerySelectorEvalTests.cs
│ │ │ ├── PageQuerySelectorTests.cs
│ │ │ └── QueryAllTests.cs
│ │ ├── RequestInterceptionExperimentalTests
│ │ │ ├── PageSetRequestInterceptionTests.cs
│ │ │ ├── RequestContinueTests.cs
│ │ │ └── RequestRespondTests.cs
│ │ ├── RequestInterceptionTests
│ │ │ ├── RequestContinueTests.cs
│ │ │ ├── RequestRespondTests.cs
│ │ │ └── SetRequestInterceptionTests.cs
│ │ ├── ScreenshotHelper.cs
│ │ ├── Screenshots
│ │ │ ├── golden-chromium
│ │ │ │ ├── 0.png
│ │ │ │ ├── csscoverage-involved.txt
│ │ │ │ ├── grid-cell-0.png
│ │ │ │ ├── grid-cell-1.png
│ │ │ │ ├── grid-cell-2.png
│ │ │ │ ├── grid-cell-3.png
│ │ │ │ ├── jscoverage-involved.txt
│ │ │ │ ├── mock-binary-response.png
│ │ │ │ ├── screenshot-clip-odd-size.png
│ │ │ │ ├── screenshot-clip-rect.png
│ │ │ │ ├── screenshot-clip-rect-scale2.png
│ │ │ │ ├── screenshot-clip-rect-scale.png
│ │ │ │ ├── screenshot-element-bounding-box.png
│ │ │ │ ├── screenshot-element-fractional-offset.png
│ │ │ │ ├── screenshot-element-fractional.png
│ │ │ │ ├── screenshot-element-larger-than-viewport.png
│ │ │ │ ├── screenshot-element-padding-border.png
│ │ │ │ ├── screenshot-element-rotate.png
│ │ │ │ ├── screenshot-element-scrolled-into-view.png
│ │ │ │ ├── screenshot-grid-fullpage.png
│ │ │ │ ├── screenshot-offscreen-clip.png
│ │ │ │ ├── screenshot-sanity.png
│ │ │ │ ├── test.png
│ │ │ │ ├── transparent.png
│ │ │ │ ├── vision-deficiency-achromatopsia.png
│ │ │ │ ├── vision-deficiency-blurredVision.png
│ │ │ │ ├── vision-deficiency-deuteranopia.png
│ │ │ │ ├── vision-deficiency-protanopia.png
│ │ │ │ ├── vision-deficiency-tritanopia.png
│ │ │ │ └── white.jpg
│ │ │ ├── golden-firefox
│ │ │ │ ├── 0.png
│ │ │ │ ├── device-pixel-ratio1.png
│ │ │ │ ├── device-pixel-ratio2.png
│ │ │ │ ├── device-pixel-ratio3.png
│ │ │ │ ├── grid-cell-0.png
│ │ │ │ ├── grid-cell-1.png
│ │ │ │ ├── screenshot-clip-odd-size.png
│ │ │ │ ├── screenshot-clip-rect.png
│ │ │ │ ├── screenshot-clip-rect-scale2.png
│ │ │ │ ├── screenshot-clip-rect-scale.png
│ │ │ │ ├── screenshot-element-bounding-box.png
│ │ │ │ ├── screenshot-element-fractional-offset.png
│ │ │ │ ├── screenshot-element-fractional.png
│ │ │ │ ├── screenshot-element-larger-than-viewport.png
│ │ │ │ ├── screenshot-element-padding-border.png
│ │ │ │ ├── screenshot-element-rotate.png
│ │ │ │ ├── screenshot-element-scrolled-into-view.png
│ │ │ │ ├── screenshot-grid-fullpage-2.png
│ │ │ │ ├── screenshot-grid-fullpage.png
│ │ │ │ ├── screenshot-offscreen-clip-2.png
│ │ │ │ ├── screenshot-offscreen-clip.png
│ │ │ │ ├── screenshot-sanity.png
│ │ │ │ ├── transparent.png
│ │ │ │ └── white.jpg
│ │ │ ├── nested-frames.txt
│ │ │ └── reconnect-nested-frames.txt
│ │ ├── ScreenshotTests
│ │ │ ├── ElementHandleScreenshotTests.cs
│ │ │ └── PageScreenshotTests.cs
│ │ ├── TargetManagerTests
│ │ │ └── TargetManagerTests.cs
│ │ ├── TargetTests
│ │ │ ├── BrowserWaitForTargetTests.cs
│ │ │ └── TargetTests.cs
│ │ ├── TestConstants.cs
│ │ ├── test.runsettings
│ │ ├── TestServerSetup.cs
│ │ ├── TestUtils.cs
│ │ ├── TouchScreenTests
│ │ │ ├── TouchEvent.cs
│ │ │ ├── TouchscreenPrototypeTapTests.cs
│ │ │ └── TouchscreenPrototypeTouchMoveTests.cs
│ │ ├── TracingTests
│ │ │ └── TracingTests.cs
│ │ ├── UtilitiesTests
│ │ │ ├── TaskHelperTests.cs
│ │ │ └── TaskQueueTests.cs
│ │ ├── WaitTaskTests
│ │ │ ├── FrameWaitForFunctionTests.cs
│ │ │ └── FrameWaitForSelectorTests.cs
│ │ ├── WontImplementTests.cs
│ │ ├── WorkerTests
│ │ │ └── PageWorkerTests.cs
│ │ └── xunit.runner.json
│ ├── PuppeteerSharp.Tests.DumpIO
│ │ ├── Program.cs
│ │ └── PuppeteerSharp.Tests.DumpIO.csproj
│ ├── PuppeteerSharp.TestServer
│ │ ├── PuppeteerSharp.TestServer.csproj
│ │ ├── SimpleCompressionMiddleware.cs
│ │ ├── SimpleServer.cs
│ │ └── wwwroot
│ │ ├── beforeunload.html
│ │ ├── cached
│ │ │ ├── bfcache
│ │ │ │ ├── index.html
│ │ │ │ ├── target.html
│ │ │ │ ├── worker-iframe-container.html
│ │ │ │ ├── worker-iframe.html
│ │ │ │ └── worker.mjs
│ │ │ ├── one-style.css
│ │ │ ├── one-style-font.css
│ │ │ ├── one-style-font.html
│ │ │ └── one-style.html
│ │ ├── chromium-linux.zip
│ │ ├── consolelog.html
│ │ ├── csp.html
│ │ ├── csscoverage
│ │ │ ├── Dosis-Regular.ttf
│ │ │ ├── involved.html
│ │ │ ├── media.html
│ │ │ ├── multiple.html
│ │ │ ├── OFL.txt
│ │ │ ├── simple.html
│ │ │ ├── sourceurl.html
│ │ │ ├── stylesheet1.css
│ │ │ ├── stylesheet2.css
│ │ │ └── unused.html
│ │ ├── detect-touch.html
│ │ ├── digits
│ │ │ ├── 0.png
│ │ │ ├── 1.png
│ │ │ ├── 2.png
│ │ │ ├── 3.png
│ │ │ ├── 4.png
│ │ │ ├── 5.png
│ │ │ ├── 6.png
│ │ │ ├── 7.png
│ │ │ ├── 8.png
│ │ │ └── 9.png
│ │ ├── dynamic-oopif.html
│ │ ├── empty.html
│ │ ├── error.html
│ │ ├── es6
│ │ │ ├── es6import.js
│ │ │ ├── es6module.js
│ │ │ └── es6pathimport.js
│ │ ├── favicon.ico
│ │ ├── file-to-upload.txt
│ │ ├── firefox.zip
│ │ ├── frame-example.html
│ │ ├── frames
│ │ │ ├── frame.html
│ │ │ ├── frameset.html
│ │ │ ├── nested-frames.html
│ │ │ ├── one-frame.html
│ │ │ ├── one-frame-url-fragment.html
│ │ │ ├── script.js
│ │ │ ├── style.css
│ │ │ └── two-frames.html
│ │ ├── global-var.html
│ │ ├── grid.html
│ │ ├── historyapi.html
│ │ ├── idle-detector.html
│ │ ├── injectedfile.js
│ │ ├── injectedstyle.css
│ │ ├── inline-svg.html
│ │ ├── inner-frame1.html
│ │ ├── inner-frame2.html
│ │ ├── input
│ │ │ ├── button.html
│ │ │ ├── checkbox.html
│ │ │ ├── drag-and-drop.html
│ │ │ ├── fileupload.html
│ │ │ ├── keyboard.html
│ │ │ ├── mouse-helper.js
│ │ │ ├── rotatedButton.html
│ │ │ ├── scrollable.html
│ │ │ ├── select.html
│ │ │ ├── textarea.html
│ │ │ ├── touchscreen.html
│ │ │ └── wheel.html
│ │ ├── jscoverage
│ │ │ ├── eval.html
│ │ │ ├── involved.html
│ │ │ ├── multiple.html
│ │ │ ├── ranges.html
│ │ │ ├── script1.js
│ │ │ ├── script2.js
│ │ │ ├── simple.html
│ │ │ ├── sourceurl.html
│ │ │ └── unused.html
│ │ ├── lazy-oopif-frame.html
│ │ ├── localhost.conf
│ │ ├── longText.html
│ │ ├── main-frame.html
│ │ ├── mobile.html
│ │ ├── modernizr.js
│ │ ├── networkidle.html
│ │ ├── offscreenbuttons.html
│ │ ├── one-style.css
│ │ ├── one-style.html
│ │ ├── oopif.html
│ │ ├── pdf.html
│ │ ├── playground.html
│ │ ├── popup
│ │ │ ├── popup.html
│ │ │ └── window-open.html
│ │ ├── pptr.png
│ │ ├── prerender
│ │ │ ├── index.html
│ │ │ └── target.html
│ │ ├── resetcss.html
│ │ ├── self-request.html
│ │ ├── serviceworkers
│ │ │ ├── empty
│ │ │ │ ├── sw.html
│ │ │ │ └── sw.js
│ │ │ └── fetch
│ │ │ ├── style.css
│ │ │ ├── sw.html
│ │ │ └── sw.js
│ │ ├── shadow.html
│ │ ├── simple.json
│ │ ├── sw.js
│ │ ├── tamperable.html
│ │ ├── title.html
│ │ ├── worker
│ │ │ ├── worker.html
│ │ │ └── worker.js
│ │ └── wrappedlink.html
│ ├── PuppeteerSharp.Tests.SingleFileDeployment
│ │ ├── Program.cs
│ │ └── PuppeteerSharp.Tests.SingleFileDeployment.csproj
│ ├── PuppeteerSharp.Tooling
│ │ ├── IdentifyMissingTests.cs
│ │ ├── Options
│ │ │ ├── IdentifyMissingTestsOptions.cs
│ │ │ └── ScaffoldTestOptions.cs
│ │ ├── Program.cs
│ │ ├── PuppeteerSharp.Tooling.csproj
│ │ └── ScaffoldTest.cs
│ └── stylecop.json
├── LICENSE
├── mdsnippets.json
├── README.md
├── samples
│ ├── complex-js-objects
│ │ ├── complex-js-objects.csproj
│ │ └── Program.cs
│ ├── get-all-links
│ │ ├── get-all-links.csproj
│ │ ├── Program.cs
│ │ └── README.md
│ ├── PupppeterSharpAspNetFrameworkSample
│ │ ├── PupppeterSharpAspNetFrameworkSample
│ │ │ ├── App_Start
│ │ │ │ └── WebApiConfig.cs
│ │ │ ├── Controllers
│ │ │ │ ├── FooController.cs
│ │ │ │ └── TestController.cs
│ │ │ ├── favicon.ico
│ │ │ ├── Global.asax
│ │ │ ├── Global.asax.cs
│ │ │ ├── packages.config
│ │ │ ├── Properties
│ │ │ │ └── AssemblyInfo.cs
│ │ │ ├── PupppeterSharpAspNetFrameworkSample.csproj
│ │ │ ├── Services
│ │ │ │ └── BrowserClient.cs
│ │ │ ├── Web.config
│ │ │ ├── Web.Debug.config
│ │ │ └── Web.Release.config
│ │ └── PupppeterSharpAspNetFrameworkSample.sln
│ ├── README.md
│ ├── reuse-downloaded-chrome
│ │ ├── Program.cs
│ │ ├── README.md
│ │ └── reuse-downloaded-chrome.csproj
│ ├── Samples.sln
│ └── searching
│ ├── Program.cs
│ ├── README.md
│ └── searching.csproj
└── tools
├── github-ops
│ ├── create-issue-from-file.js
│ ├── create-issue-from-upstream
│ ├── package.json
│ └── package-lock.json
└── upstream-ops
├── generate-ignore-tests.js
└── package.json
147 directories, 1068 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论