- 扫描 ID:
- 437cf407-cb9c-486d-9c36-e5d25cf87ca8已完成
- 提交的 URL:
- https://fingerprintjs.github.io/BotD/main/
- 报告完成时间:
链接 · 找到 2 个
从页面中识别出的传出链接
链接 | 文本 |
---|---|
https://fingerprint.com/ | |
https://github.com/fingerprintjs/BotD | fingerprintjs/BotD |
JavaScript 变量 · 找到 3 个
在页面窗口对象上加载的全局 JavaScript 变量是在函数外部声明的变量,可以从当前范围内的代码中的任何位置访问
名称 | 类型 |
---|---|
onbeforetoggle | object |
documentPictureInPicture | object |
onscrollend | object |
控制台日志消息 · 找到 1 条
记录到 Web 控制台的消息
类型 | 类别 | 记录 |
---|---|---|
warning | other |
|
HTML
页面的原始 HTML 正文
<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta content="width=device-width,initial-scale=1" name="viewport"><link rel="icon" href="favicon.ico" type="image/x-icon"><title>BotD Playground</title><link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin=""><link href="https://fonts.googleapis.com/css2?family=Fira+Mono:wght@400;700&display=swap" rel="stylesheet"><script defer="defer" src="main.bundle.js"></script><style>:root {
--accent-color: rgb(240, 68, 5);
--accent-dark-color: rgb(140, 39, 3);
--error-color: #b3261e;
--font-family: 'Fira Mono', monospace;
--font-family-consolas: Consolas, 'Liberation Mono', Menlo, Courier, monospace;
}
body {
width: 100%;
height: 100%;
cursor: default;
margin: 0px;
padding: 0px;
background-color: #f2f2f7;
color: #000;
font-size: 14px;
position: relative;
overflow-x: hidden;
font-weight: 400;
font-family: var(--font-family);
padding-bottom: 24px;
}
* {
box-sizing: border-box;
}
.container {
width: calc(100% - 128px);
max-width: 1536px;
margin: 0 auto;
}
.medium-container {
width: calc(100% - 32px);
max-width: 960px;
margin: 0 auto;
}
#navbar {
width: 100%;
height: 96px;
background-color: #fff;
}
#navbar a {
text-decoration: none;
color: inherit;
}
#navbar .container {
display: flex;
align-items: center;
height: 100%;
}
#navbar-chevron {
width: 24px;
height: 24px;
background-repeat: no-repeat;
background-position: center;
background-image: url(https://fingerprintjs.github.io/BotD/main/cb3e629604702ef8bc66.svg);
opacity: 0.2;
margin-left: 8px;
}
#navbar .logo-ref {
width: max-content;
}
#navbar .logo {
width: 196px;
margin-top: 2px;
}
@media only screen and (max-width: 700px) {
#navbar {
height: auto;
}
#navbar .container {
flex-direction: column;
align-items: center;
}
#navbar .logo-ref {
margin-top: 32px;
}
#navbar .logo {
margin-top: 0;
width: 256px;
}
#navbar #navbar-chevron {
transform: rotate(90deg);
}
#navbar #playground-actions {
margin-left: 0;
margin: 32px 0px;
}
}
h1,
h2 {
font-weight: 700;
color: #0d102b;
}
h1 {
font-size: 24px;
}
h2 {
font-size: 20px;
}
.content {
height: 100vh;
width: calc(100% - 64px);
max-width: 960px;
display: flex;
flex-direction: column;
margin: 0 auto;
}
.github-card {
display: flex;
align-items: center;
border-radius: 8px;
user-select: none;
padding: 8px;
}
.github-card:hover {
background-color: rgba(0, 0, 0, 0.06);
transition: 0.15s;
}
.github-card:active,
.github-card:focus {
background-color: rgba(0, 0, 0, 0.12);
transition: 0.15s;
}
.github-card::before {
display: block;
content: '';
width: 32px;
height: 32px;
background-image: url(https://fingerprintjs.github.io/BotD/main/550985caaa8859d4b95f.svg);
background-size: 24px;
background-repeat: no-repeat;
background-position: center;
margin-right: 4px;
}
#playground-actions {
display: flex;
align-items: center;
column-gap: 16px;
margin-left: auto;
}
.button {
width: fit-content;
height: fit-content;
padding: 12px 20px;
border-radius: 6px;
outline: none;
margin: none;
border: none;
font-size: 14px;
font-family: var(--font-family);
transition: 0.15s background-color;
font-weight: 600;
}
.orange-button {
background-color: var(--accent-color);
color: #fff;
border: 2px solid transparent;
}
.orange-button-outlined {
border: 2px solid var(--accent-color);
color: var(--accent-color);
background-color: transparent;
}
.orange-button:hover,
.orange-button:active,
.orange-button:focus {
background-color: var(--accent-dark-color);
}
.orange-button-outlined:hover,
.orange-button-outlined:active,
.orange-button-outlined:focus {
background-color: rgba(240, 68, 5, 0.12);
}
.content-card {
overflow: hidden;
}
.content-card-header {
font-size: 20px;
font-weight: 600;
padding: var(--content-card-padding);
}
#result {
overflow: hidden;
margin: 96px auto;
display: flex;
flex-direction: column;
align-items: center;
--bot-icon-color: #4caf50;
--bot-icon-url: url(https://fingerprintjs.github.io/BotD/main/80392182d321c655d4d0.svg);
}
.result-detected {
--bot-icon-color: #f44336 !important;
--bot-icon-url: url(https://fingerprintjs.github.io/BotD/main/52d88d31d700c20dcc04.svg) !important;
}
.result-error {
--bot-icon-color: var(--error-color) !important;
--bot-icon-url: url(https://fingerprintjs.github.io/BotD/main/bf468b98f99fe3cb600c.svg) !important;
}
.result-bot-icon-container {
width: 128px;
height: 128px;
position: relative;
display: flex;
align-items: center;
justify-content: center;
}
.result-bot-icon-container::before {
content: '';
display: block;
background-color: var(--bot-icon-color);
opacity: 0.08;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: -1;
border-radius: 100%;
transition: 0.2s background-color;
}
.result-bot-icon {
width: 52px;
height: 52px;
mask-image: var(--bot-icon-url);
-webkit-mask-image: var(--bot-icon-url);
mask-size: 100%;
mask-repeat: no-repeat;
mask-position: center;
background-color: var(--bot-icon-color);
position: relative;
transition: 0.2s mask-image, 0.2s -webkit-mask-image, 0.2s background-color;
}
#result-text {
margin-top: 24px;
font-size: 18px;
font-weight: 600;
color: var(--bot-icon-color);
transition: 0.2s color;
}
.logs-content {
background-color: #282c34;
color: #fff;
border-radius: 12px;
padding: 24px;
margin-top: 12px;
font-family: var(--font-family-consolas);
}
.logs-buttons-list {
display: flex;
margin-left: auto;
}
.logs-top-bar {
display: flex;
align-items: center;
}
.logs-section:not(:first-child) {
margin-top: 24px;
}
.logs-section-header {
color: var(--accent-color);
font-size: 14px;
}
.logs-section-content {
font-size: 12px;
margin-top: 1em;
white-space: pre-wrap;
}
#error-container {
margin-bottom: 96px;
padding: 24px;
border: 2px solid var(--error-color);
border-radius: 12px;
font-family: var(--font-family-consolas);
font-size: 14px;
line-height: 2;
display: none;
}
.error-container-visible {
display: block !important;
}
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIndlYnBhY2s6Ly8uL3BsYXlncm91bmQvc3R5bGUuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBO0VBQ0UsK0JBQStCO0VBQy9CLG9DQUFvQztFQUNwQyxzQkFBc0I7RUFDdEIscUNBQXFDO0VBQ3JDLDhFQUE4RTtBQUNoRjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0VBQ1osZUFBZTtFQUNmLFdBQVc7RUFDWCxZQUFZO0VBQ1oseUJBQXlCO0VBQ3pCLFdBQVc7RUFDWCxlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsK0JBQStCO0VBQy9CLG9CQUFvQjtBQUN0Qjs7QUFFQTtFQUNFLHNCQUFzQjtBQUN4Qjs7QUFFQTtFQUNFLHlCQUF5QjtFQUN6QixpQkFBaUI7RUFDakIsY0FBYztBQUNoQjs7QUFFQTtFQUNFLHdCQUF3QjtFQUN4QixnQkFBZ0I7RUFDaEIsY0FBYztBQUNoQjs7QUFFQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0VBQ1osc0JBQXNCO0FBQ3hCOztBQUVBO0VBQ0UscUJBQXFCO0VBQ3JCLGNBQWM7QUFDaEI7O0FBRUE7RUFDRSxhQUFhO0VBQ2IsbUJBQW1CO0VBQ25CLFlBQVk7QUFDZDs7QUFFQTtFQUNFLFdBQVc7RUFDWCxZQUFZO0VBQ1osNEJBQTRCO0VBQzVCLDJCQUEyQjtFQUMzQix5REFBcUQ7RUFDckQsWUFBWTtFQUNaLGdCQUFnQjtBQUNsQjs7QUFFQTtFQUNFLGtCQUFrQjtBQUNwQjs7QUFFQTtFQUNFLFlBQVk7RUFDWixlQUFlO0FBQ2pCOztBQUVBO0VBQ0U7SUFDRSxZQUFZO0VBQ2Q7O0VBRUE7SUFDRSxzQkFBc0I7SUFDdEIsbUJBQW1CO0VBQ3JCOztFQUVBO0lBQ0UsZ0JBQWdCO0VBQ2xCOztFQUVBO0lBQ0UsYUFBYTtJQUNiLFlBQVk7RUFDZDs7RUFFQTtJQUNFLHdCQUF3QjtFQUMxQjs7RUFFQTtJQUNFLGNBQWM7SUFDZCxnQkFBZ0I7RUFDbEI7QUFDRjs7QUFFQTs7RUFF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LHlCQUF5QjtBQUMzQiIsInNvdXJjZXNDb250ZW50IjpbIjpyb290IHtcbiAgLS1hY2NlbnQtY29sb3I6IHJnYigyNDAsIDY4LCA1KTtcbiAgLS1hY2NlbnQtZGFyay1jb2xvcjogcmdiKDE0MCwgMzksIDMpO1xuICAtLWVycm9yLWNvbG9yOiAjYjMyNjFlO1xuICAtLWZvbnQtZmFtaWx5OiAnRmlyYSBNb25vJywgbW9ub3NwYWNlO1xuICAtLWZvbnQtZmFtaWx5LWNvbnNvbGFzOiBDb25zb2xhcywgJ0xpYmVyYXRpb24gTW9ubycsIE1lbmxvLCBDb3VyaWVyLCBtb25vc3BhY2U7XG59XG5cbmJvZHkge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBjdXJzb3I6IGRlZmF1bHQ7XG4gIG1hcmdpbjogMHB4O1xuICBwYWRkaW5nOiAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmMmYyZjc7XG4gIGNvbG9yOiAjMDAwO1xuICBmb250LXNpemU6IDE0cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBmb250LXdlaWdodDogNDAwO1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHkpO1xuICBwYWRkaW5nLWJvdHRvbTogMjRweDtcbn1cblxuKiB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbi5jb250YWluZXIge1xuICB3aWR0aDogY2FsYygxMDAlIC0gMTI4cHgpO1xuICBtYXgtd2lkdGg6IDE1MzZweDtcbiAgbWFyZ2luOiAwIGF1dG87XG59XG5cbi5tZWRpdW0tY29udGFpbmVyIHtcbiAgd2lkdGg6IGNhbGMoMTAwJSAtIDMycHgpO1xuICBtYXgtd2lkdGg6IDk2MHB4O1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuI25hdmJhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDk2cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbiNuYXZiYXIgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6IGluaGVyaXQ7XG59XG5cbiNuYXZiYXIgLmNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuI25hdmJhci1jaGV2cm9uIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogMjRweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vcmVzb3VyY2VzL2NoZXZyb25fcmlnaHQuc3ZnKTtcbiAgb3BhY2l0eTogMC4yO1xuICBtYXJnaW4tbGVmdDogOHB4O1xufVxuXG4jbmF2YmFyIC5sb2dvLXJlZiB7XG4gIHdpZHRoOiBtYXgtY29udGVudDtcbn1cblxuI25hdmJhciAubG9nbyB7XG4gIHdpZHRoOiAxOTZweDtcbiAgbWFyZ2luLXRvcDogMnB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDcwMHB4KSB7XG4gICNuYXZiYXIge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxuXG4gICNuYXZiYXIgLmNvbnRhaW5lciB7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgI25hdmJhciAubG9nby1yZWYge1xuICAgIG1hcmdpbi10b3A6IDMycHg7XG4gIH1cblxuICAjbmF2YmFyIC5sb2dvIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHdpZHRoOiAyNTZweDtcbiAgfVxuXG4gICNuYXZiYXIgI25hdmJhci1jaGV2cm9uIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIH1cblxuICAjbmF2YmFyICNwbGF5Z3JvdW5kLWFjdGlvbnMge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIG1hcmdpbjogMzJweCAwcHg7XG4gIH1cbn1cblxuaDEsXG5oMiB7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGNvbG9yOiAjMGQxMDJiO1xufVxuaDEge1xuICBmb250LXNpemU6IDI0cHg7XG59XG5oMiB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLmNvbnRlbnQge1xuICBoZWlnaHQ6IDEwMHZoO1xuICB3aWR0aDogY2FsYygxMDAlIC0gNjRweCk7XG4gIG1heC13aWR0aDogOTYwcHg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIG1hcmdpbjogMCBhdXRvO1xufVxuXG4uZ2l0aHViLWNhcmQge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBib3JkZXItcmFkaXVzOiA4cHg7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwYWRkaW5nOiA4cHg7XG59XG5cbi5naXRodWItY2FyZDpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4wNik7XG4gIHRyYW5zaXRpb246IDAuMTVzO1xufVxuXG4uZ2l0aHViLWNhcmQ6YWN0aXZlLFxuLmdpdGh1Yi1jYXJkOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjEyKTtcbiAgdHJhbnNpdGlvbjogMC4xNXM7XG59XG5cbi5naXRodWItY2FyZDo6YmVmb3JlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICB3aWR0aDogMzJweDtcbiAgaGVpZ2h0OiAzMnB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vcmVzb3VyY2VzL2dpdGh1Yl9pY29uLnN2Zyk7XG4gIGJhY2tncm91bmQtc2l6ZTogMjRweDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBtYXJnaW4tcmlnaHQ6IDRweDtcbn1cblxuI3BsYXlncm91bmQtYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDE2cHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xufVxuXG4uYnV0dG9uIHtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBoZWlnaHQ6IGZpdC1jb250ZW50O1xuICBwYWRkaW5nOiAxMnB4IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgb3V0bGluZTogbm9uZTtcbiAgbWFyZ2luOiBub25lO1xuICBib3JkZXI6IG5vbmU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtZmFtaWx5KTtcbiAgdHJhbnNpdGlvbjogMC4xNXMgYmFja2dyb3VuZC1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cblxuLm9yYW5nZS1idXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpO1xuICBjb2xvcjogI2ZmZjtcbiAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi5vcmFuZ2UtYnV0dG9uLW91dGxpbmVkIHtcbiAgYm9yZGVyOiAycHggc29saWQgdmFyKC0tYWNjZW50LWNvbG9yKTtcbiAgY29sb3I6IHZhcigtLWFjY2VudC1jb2xvcik7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4ub3JhbmdlLWJ1dHRvbjpob3Zlcixcbi5vcmFuZ2UtYnV0dG9uOmFjdGl2ZSxcbi5vcmFuZ2UtYnV0dG9uOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYWNjZW50LWRhcmstY29sb3IpO1xufVxuXG4ub3JhbmdlLWJ1dHRvbi1vdXRsaW5lZDpob3Zlcixcbi5vcmFuZ2UtYnV0dG9uLW91dGxpbmVkOmFjdGl2ZSxcbi5vcmFuZ2UtYnV0dG9uLW91dGxpbmVkOmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDAsIDY4LCA1LCAwLjEyKTtcbn1cblxuLmNvbnRlbnQtY2FyZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5jb250ZW50LWNhcmQtaGVhZGVyIHtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBmb250LXdlaWdodDogNjAwO1xuICBwYWRkaW5nOiB2YXIoLS1jb250ZW50LWNhcmQtcGFkZGluZyk7XG59XG5cbiNyZXN1bHQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBtYXJnaW46IDk2cHggYXV0bztcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLS1ib3QtaWNvbi1jb2xvcjogIzRjYWY1MDtcbiAgLS1ib3QtaWNvbi11cmw6IHVybCguLi9yZXNvdXJjZXMvcm9ib3Qtb2ZmLW91dGxpbmUuc3ZnKTtcbn1cblxuLnJlc3VsdC1kZXRlY3RlZCB7XG4gIC0tYm90LWljb24tY29sb3I6ICNmNDQzMzYgIWltcG9ydGFudDtcbiAgLS1ib3QtaWNvbi11cmw6IHVybCguLi9yZXNvdXJjZXMvcm9ib3Qtb3V0bGluZS5zdmcpICFpbXBvcnRhbnQ7XG59XG5cbi5yZXN1bHQtZXJyb3Ige1xuICAtLWJvdC1pY29uLWNvbG9yOiB2YXIoLS1lcnJvci1jb2xvcikgIWltcG9ydGFudDtcbiAgLS1ib3QtaWNvbi11cmw6IHVybCguLi9yZXNvdXJjZXMvYWxlcnQtY2lyY2xlLW91dGxpbmUuc3ZnKSAhaW1wb3J0YW50O1xufVxuXG4ucmVzdWx0LWJvdC1pY29uLWNvbnRhaW5lciB7XG4gIHdpZHRoOiAxMjhweDtcbiAgaGVpZ2h0OiAxMjhweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLnJlc3VsdC1ib3QtaWNvbi1jb250YWluZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZC1jb2xvcjogdmFyKC0tYm90LWljb24tY29sb3IpO1xuICBvcGFjaXR5OiAwLjA4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgei1pbmRleDogLTE7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHRyYW5zaXRpb246IDAuMnMgYmFja2dyb3VuZC1jb2xvcjtcbn1cblxuLnJlc3VsdC1ib3QtaWNvbiB7XG4gIHdpZHRoOiA1MnB4O1xuICBoZWlnaHQ6IDUycHg7XG4gIG1hc2staW1hZ2U6IHZhcigtLWJvdC1pY29uLXVybCk7XG4gIC13ZWJraXQtbWFzay1pbWFnZTogdmFyKC0tYm90LWljb24tdXJsKTtcbiAgbWFzay1zaXplOiAxMDAlO1xuICBtYXNrLXJlcGVhdDogbm8tcmVwZWF0O1xuICBtYXNrLXBvc2l0aW9uOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWJvdC1pY29uLWNvbG9yKTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiAwLjJzIG1hc2staW1hZ2UsIDAuMnMgLXdlYmtpdC1tYXNrLWltYWdlLCAwLjJzIGJhY2tncm91bmQtY29sb3I7XG59XG5cbiNyZXN1bHQtdGV4dCB7XG4gIG1hcmdpbi10b3A6IDI0cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgY29sb3I6IHZhcigtLWJvdC1pY29uLWNvbG9yKTtcbiAgdHJhbnNpdGlvbjogMC4ycyBjb2xvcjtcbn1cblxuLmxvZ3MtY29udGVudCB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyODJjMzQ7XG4gIGNvbG9yOiAjZmZmO1xuICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICBwYWRkaW5nOiAyNHB4O1xuICBtYXJnaW4tdG9wOiAxMnB4O1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1mYW1pbHktY29uc29sYXMpO1xufVxuXG4ubG9ncy1idXR0b25zLWxpc3Qge1xuICBkaXNwbGF5OiBmbGV4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cblxuLmxvZ3MtdG9wLWJhciB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG59XG5cbi5sb2dzLXNlY3Rpb246bm90KDpmaXJzdC1jaGlsZCkge1xuICBtYXJnaW4tdG9wOiAyNHB4O1xufVxuXG4ubG9ncy1zZWN0aW9uLWhlYWRlciB7XG4gIGNvbG9yOiB2YXIoLS1hY2NlbnQtY29sb3IpO1xuICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5sb2dzLXNlY3Rpb24tY29udGVudCB7XG4gIGZvbnQtc2l6ZTogMTJweDtcbiAgbWFyZ2luLXRvcDogMWVtO1xuICB3aGl0ZS1zcGFjZTogcHJlLXdyYXA7XG59XG5cbiNlcnJvci1jb250YWluZXIge1xuICBtYXJnaW4tYm90dG9tOiA5NnB4O1xuICBwYWRkaW5nOiAyNHB4O1xuICBib3JkZXI6IDJweCBzb2xpZCB2YXIoLS1lcnJvci1jb2xvcik7XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LWZhbWlseS1jb25zb2xhcyk7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbGluZS1oZWlnaHQ6IDI7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5lcnJvci1jb250YWluZXItdmlzaWJsZSB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4iXSwic291cmNlUm9vdCI6IiJ9 */</style></head><body><nav id="navbar"><div class="container"><a class="logo-ref" href="https://fingerprint.com/" target="_blank"><img class="logo" src="logo_dark.svg" alt="Fingerprint"></a><div id="navbar-chevron"></div><a class="github-card" href="https://github.com/fingerprintjs/BotD" target="_blank"><span>fingerprintjs/BotD</span></a><div id="playground-actions"><button id="detect-button" class="button orange-button">Detect</button></div></div></nav><div id="result"><div class="result-bot-icon-container"><div class="result-bot-icon"></div></div><div id="result-text">You are not a bot.</div></div><div id="error-container" class="medium-container"><pre id="error-message">Lorem ipsum dolor sit amet consectetur adipisicing elit. Reiciendis, suscipit assumenda dicta, iste, eius possimus sunt asperiores debitis quam voluptatum deleniti obcaecati facere nisi deserunt reprehenderit nobis sapiente explicabo non.</pre></div><div class="medium-container content-card"><div class="logs-top-bar"><div class="content-card-header">Logs</div><div class="logs-buttons-list"><button id="copy-logs-button" class="button orange-button-outlined">Copy logs</button></div></div><div class="logs-content"><div class="logs-section"><div class="logs-section-header">Collection time:</div><pre class="logs-section-content" id="collection-time">23.00ms</pre></div><div class="logs-section"><div class="logs-section-header">Detection time:</div><pre class="logs-section-content" id="detection-time">24.30ms</pre></div><div class="logs-section"><div class="logs-section-header">Detection result:</div><pre class="logs-section-content" id="detection-result">{
"bot": false
}</pre></div><div class="logs-section"><div class="logs-section-header">Detectors:</div><pre class="logs-section-content" id="detectors">{
"detectAppVersion": {
"bot": false
},
"detectDocumentAttributes": {
"bot": false
},
"detectErrorTrace": {
"bot": false
},
"detectEvalLengthInconsistency": {
"bot": false
},
"detectFunctionBind": {
"bot": false
},
"detectLanguagesLengthInconsistency": {
"bot": false
},
"detectNotificationPermissions": {
"bot": false
},
"detectPluginsArray": {
"bot": false
},
"detectPluginsLengthInconsistency": {
"bot": false
},
"detectProcess": {
"bot": false
},
"detectUserAgent": {
"bot": false
},
"detectWebDriver": {
"bot": false
},
"detectWebGL": {
"bot": false
},
"detectWindowExternal": {
"bot": false
},
"detectWindowSize": {
"bot": false
},
"detectMimeTypesConsistent": {
"bot": false
},
"detectProductSub": {
"bot": false
},
"detectDistinctiveProperties": {
"bot": false
}
}</pre></div><div class="logs-section"><div class="logs-section-header">Debug data:</div><pre class="logs-section-content" id="debug-data">{
"browserEngineKind": "chromium",
"browserKind": "chrome",
"browserVersion": {
"major": 119,
"minor": 0
},
"documentFocus": false,
"mozAppearanceSupport": false,
"isAndroid": false,
"isDesktopWebKit": false,
"isIPad": true
}</pre></div><div class="logs-section"><div class="logs-section-header">Collected data:</div><pre class="logs-section-content" id="collected-data">{
"webGL": {
"state": -4,
"error": "BotdError: WebGLRenderingContext is null"
},
"process": {
"state": -1,
"error": "BotdError: window.process is undefined"
},
"android": {
"value": false,
"state": 0
},
"browserKind": {
"value": "chrome",
"state": 0
},
"browserEngineKind": {
"value": "chromium",
"state": 0
},
"documentFocus": {
"value": false,
"state": 0
},
"userAgent": {
"value": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36",
"state": 0
},
"appVersion": {
"value": "5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36",
"state": 0
},
"rtt": {
"value": 0,
"state": 0
},
"windowSize": {
"value": {
"outerWidth": 0,
"outerHeight": 0,
"innerWidth": 800,
"innerHeight": 600
},
"state": 0
},
"pluginsLength": {
"value": 5,
"state": 0
},
"pluginsArray": {
"value": true,
"state": 0
},
"errorTrace": {
"value": "TypeError: Cannot read properties of null (reading '0')\n at errorTrace (https://fingerprintjs.github.io/BotD/main/main.bundle.js:1:45895)\n at https://fingerprintjs.github.io/BotD/main/main.bundle.js:1:39515\n at https://fingerprintjs.github.io/BotD/main/main.bundle.js:1:38324\n at Object.next (https://fingerprintjs.github.io/BotD/main/main.bundle.js:1:38429)\n at https://fingerprintjs.github.io/BotD/main/main.bundle.js:1:37345\n at new Promise (<anonymous>)\n at e (https://fingerprintjs.github.io/BotD/main/main.bundle.js:1:37090)\n at https://fingerprintjs.github.io/BotD/main/main.bundle.js:1:39352\n at Array.map (<anonymous>)\n at https://fingerprintjs.github.io/BotD/main/main.bundle.js:1:39328",
"state": 0
},
"productSub": {
"value": "20030107",
"state": 0
},
"windowExternal": {
"value": "[object External]",
"state": 0
},
"mimeTypesConsistent": {
"value": true,
"state": 0
},
"evalLength": {
"value": 33,
"state": 0
},
"webDriver": {
"value": false,
"state": 0
},
"languages": {
"value": [
[
"en-US"
]
],
"state": 0
},
"documentElementKeys": {
"value": [
"lang"
],
"state": 0
},
"functionBind": {
"value": "function bind() { [native code] }",
"state": 0
},
"distinctiveProps": {
"value": {
"awesomium": false,
"cef": false,
"cefsharp": false,
"coachjs": false,
"fminer": false,
"geb": false,
"nightmarejs": false,
"phantomas": false,
"phantomjs": false,
"rhino": false,
"selenium": false,
"webdriverio": false,
"webdriver": false,
"headless_chrome": false
},
"state": 0
},
"notificationPermissions": {
"value": false,
"state": 0
}
}</pre></div></div></div></body></html>