修复微信二维码展示
This commit is contained in:
@@ -94,12 +94,40 @@ export async function extractQqQrState(page) {
|
||||
}
|
||||
|
||||
try {
|
||||
const qrVisible = await frame
|
||||
.locator('#qrlogin_img')
|
||||
.first()
|
||||
.isVisible()
|
||||
.catch(() => false)
|
||||
const bodyText = String(await frame.locator('body').textContent()).replace(/\s+/g, ' ').trim()
|
||||
const { qrVisible, bodyText } = await frame
|
||||
.evaluate(() => {
|
||||
const isVisible = (element) => {
|
||||
if (!(element instanceof HTMLElement)) {
|
||||
return false
|
||||
}
|
||||
|
||||
const style = window.getComputedStyle(element)
|
||||
const rect = element.getBoundingClientRect()
|
||||
return (
|
||||
style.display !== 'none' &&
|
||||
style.visibility !== 'hidden' &&
|
||||
style.opacity !== '0' &&
|
||||
rect.width > 0 &&
|
||||
rect.height > 0
|
||||
)
|
||||
}
|
||||
|
||||
const qrImage = document.querySelector('#qrlogin_img')
|
||||
const bodyText = String(document.body?.textContent || '').replace(/\s+/g, ' ').trim()
|
||||
|
||||
return {
|
||||
qrVisible:
|
||||
qrImage instanceof HTMLImageElement &&
|
||||
isVisible(qrImage) &&
|
||||
Number(qrImage.naturalWidth || 0) > 0 &&
|
||||
Number(qrImage.naturalHeight || 0) > 0,
|
||||
bodyText,
|
||||
}
|
||||
})
|
||||
.catch(() => ({
|
||||
qrVisible: false,
|
||||
bodyText: '',
|
||||
}))
|
||||
|
||||
return {
|
||||
visible: true,
|
||||
|
||||
@@ -120,12 +120,9 @@ export async function extractWxQrState(page) {
|
||||
}
|
||||
|
||||
try {
|
||||
const qrVisible = await frame
|
||||
.locator('.js_qrcode_img')
|
||||
.first()
|
||||
.isVisible()
|
||||
.catch(() => false)
|
||||
const bodyText = String(await frame.locator('body').textContent()).replace(/\s+/g, ' ').trim()
|
||||
const viewState = await inspectWxLoginView(frame)
|
||||
const qrVisible = viewState.qrVisible
|
||||
const bodyText = viewState.bodyText
|
||||
|
||||
return {
|
||||
visible: true,
|
||||
|
||||
@@ -40,7 +40,7 @@ services:
|
||||
DATABASE_MAX_CONNECTIONS: ${DATABASE_MAX_CONNECTIONS:-10}
|
||||
OCR_PROJECT_ROOT: /app/subservices/ocr-worker
|
||||
CLAIM_BASE_URL: ${CLAIM_BASE_URL:-http://localhost/#/claim}
|
||||
TENCENT_REDEEM_PROOF_MODE: ${TENCENT_REDEEM_PROOF_MODE:-basic}
|
||||
TENCENT_REDEEM_PROOF_MODE: ${TENCENT_REDEEM_PROOF_MODE:-full}
|
||||
TENCENT_BROWSER_HEADLESS: ${TENCENT_BROWSER_HEADLESS:-true}
|
||||
TENCENT_BROWSER_PREWARM: ${TENCENT_BROWSER_PREWARM:-true}
|
||||
TENCENT_BROWSER_KEEP_ALIVE: ${TENCENT_BROWSER_KEEP_ALIVE:-true}
|
||||
|
||||
+1
-1
@@ -33,7 +33,7 @@ services:
|
||||
DATABASE_MAX_CONNECTIONS: ${DATABASE_MAX_CONNECTIONS:-20}
|
||||
OCR_PROJECT_ROOT: /app/subservices/ocr-worker
|
||||
CLAIM_BASE_URL: ${CLAIM_BASE_URL:-http://localhost/#/claim}
|
||||
TENCENT_REDEEM_PROOF_MODE: ${TENCENT_REDEEM_PROOF_MODE:-basic}
|
||||
TENCENT_REDEEM_PROOF_MODE: ${TENCENT_REDEEM_PROOF_MODE:-full}
|
||||
TENCENT_BROWSER_HEADLESS: ${TENCENT_BROWSER_HEADLESS:-true}
|
||||
TENCENT_BROWSER_PREWARM: ${TENCENT_BROWSER_PREWARM:-true}
|
||||
TENCENT_BROWSER_KEEP_ALIVE: ${TENCENT_BROWSER_KEEP_ALIVE:-true}
|
||||
|
||||
Reference in New Issue
Block a user