kopia lustrzana https://github.com/transitive-bullshit/chatgpt-api
⚡️ Improve robustness
rodzic
c29a5f3fdd
commit
e98f740f1a
|
@ -126,14 +126,16 @@ export async function getOpenAIAuth({
|
|||
await delay(500)
|
||||
|
||||
// click login button and wait for navigation to finish
|
||||
await Promise.all([
|
||||
page.waitForNavigation({
|
||||
waitUntil: 'networkidle2',
|
||||
timeout: timeoutMs
|
||||
}),
|
||||
|
||||
page.click('#__next .btn-primary')
|
||||
])
|
||||
while (page.url().endsWith('/auth/login')) {
|
||||
await Promise.all([
|
||||
page.waitForNavigation({
|
||||
waitUntil: 'networkidle2',
|
||||
timeout: timeoutMs
|
||||
}),
|
||||
page.click('#__next .btn-primary')
|
||||
])
|
||||
delay(500)
|
||||
}
|
||||
|
||||
await checkForChatGPTAtCapacity(page, { timeoutMs })
|
||||
|
||||
|
@ -179,12 +181,22 @@ export async function getOpenAIAuth({
|
|||
if (hasNopechaExtension) {
|
||||
await waitForRecaptcha(page, { timeoutMs })
|
||||
} else if (hasRecaptchaPlugin) {
|
||||
// Add retry for network unstable
|
||||
console.log('solving captchas using 2captcha...')
|
||||
const res = await page.solveRecaptchas()
|
||||
if (res.captchas?.length) {
|
||||
console.log('captchas result', res)
|
||||
} else {
|
||||
console.log('no captchas found')
|
||||
const retries = 3
|
||||
for (let i = 0; i < retries; i++) {
|
||||
try {
|
||||
const res = await page.solveRecaptchas()
|
||||
if (res.captchas?.length) {
|
||||
console.log('captchas result', res)
|
||||
break
|
||||
} else {
|
||||
console.log('no captchas found')
|
||||
delay(500)
|
||||
}
|
||||
} catch (e) {
|
||||
console.log('captcha error', e)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue