mirror of
https://github.com/j93es/browser-use-oauth.git
synced 2026-06-04 11:01:52 +09:00
feat: OAuth 리스트 추출 및 모델 수정, 파일 생성 및 설정 과정 개선
- Windows에서 storage_state 이슈가 일어납니다.
This commit is contained in:
parent
6ddeed2173
commit
1767cd5861
5 changed files with 18 additions and 27 deletions
|
|
@ -1,12 +1,12 @@
|
|||
# @file purpose: This file contains the prompt for extracting a list of OAuth providers from a web page.
|
||||
# OAuth 리스트 추출용 프롬프트 (클릭하지 않고 단순 식별만)
|
||||
extract_oauth_list_prompt = f"""
|
||||
🎯 목적: 주어진 초기 URL 내에서 **OAuth 로그인 URL**을 찾아 아래 형식의 JSON으로 정리합니다.
|
||||
🎯 목적: 주어진 초기 URL 내에서 **OAuth 로그인 Provider**를 찾아 아래 형식의 JSON으로 정리합니다.
|
||||
|
||||
📌 작업 목표:
|
||||
- Google, GitHub, Discord, Facebook, Apple 등 **OAuth 인증을 사용하는 외부 로그인 링크**를 모두 수집합니다.
|
||||
- Google, GitHub, Discord, Facebook, Apple, Microsoft, Twitter, LinkedIn 등 **OAuth 인증을 사용하는 외부 로그인 링크**에서 Provider 이름만 모두 수집합니다.
|
||||
- 로그인 버튼, 링크 클릭 등을 통해 탐색을 진행할 수 있습니다.
|
||||
- OAuth URL이 실제로 포함된 최종 리디렉션 URL 또는 팝업 주소를 캡처합니다.
|
||||
- **같은 provider가 여러 번 나와도 가장 대표적인 URL 하나만 저장**합니다.
|
||||
- **같은 provider가 여러 번 나와도 하나만 저장**합니다.
|
||||
|
||||
🛑 제한 사항:
|
||||
- ❌ 로그인 입력창이나 이메일/비밀번호 입력 방식은 제외합니다.
|
||||
|
|
@ -15,8 +15,7 @@ extract_oauth_list_prompt = f"""
|
|||
🔍 탐색 방법:
|
||||
1. 초기 URL에 접속하여 **클라이언트용 로그인 페이지**로 진입합니다.
|
||||
2. 페이지가 정상적으로 로드되었다고 가정합니다.
|
||||
3. 'Continue with X', 'Continue with Google'... 등의 버튼이나 링크를 클릭합니다.
|
||||
4. 버튼 클릭 시 리디렉션되거나 팝업이 열린다면 해당 주소를 확인합니다.
|
||||
3. 'Continue with X', 'Continue with Google'... 등의 버튼이나 링크를 식별합니다.
|
||||
|
||||
|
||||
🧾 출력 형식 (예시):
|
||||
|
|
@ -24,25 +23,16 @@ extract_oauth_list_prompt = f"""
|
|||
```json
|
||||
{{
|
||||
"oauth_providers": [
|
||||
{{
|
||||
"provider": "Google",
|
||||
"oauth_uri": "https://accounts.google.com/o/oauth2/v2/auth?client_id=..."
|
||||
}},
|
||||
{{
|
||||
"provider": "GitHub",
|
||||
"oauth_uri": "https://github.com/login/oauth/authorize?client_id=..."
|
||||
}},
|
||||
{{
|
||||
"provider": "Discord",
|
||||
"oauth_uri": "https://discord.com/oauth2/authorize?client_id=..."
|
||||
}}
|
||||
"Google",
|
||||
"GitHub",
|
||||
"Discord"
|
||||
]
|
||||
}}
|
||||
```
|
||||
|
||||
📌 주의:
|
||||
결과가 없는 provider는 JSON에 포함하지 않아도 됩니다.
|
||||
정확한 provider 이름과 oauth_uri를 매칭해 주세요
|
||||
결과가 없는 경우 빈 배열 `[]`로 반환합니다.
|
||||
정확한 provider 이름을 포함해 주세요.
|
||||
|
||||
"""
|
||||
|
||||
|
|
|
|||
|
|
@ -74,7 +74,7 @@ extend_planner_system_message = f"""
|
|||
- **로그인 완료 후 authorize 등 버튼이 있으면 클릭**
|
||||
- GitHub같은 경우 Authorize 버튼이 뜨는데 오래걸릴 수 있음, 기다려야 할 수도 있음
|
||||
- 만약 버튼을 눌러도 반응이 없을 경우 새로고침을 한번 해주세요.
|
||||
- 로그인 실패 시에는 다음 SSO 버튼을 클릭합니다.
|
||||
- **OAuth Flow가 완료되면 (callback URL 도달 또는 인증 완료) 즉시 작업 종료**
|
||||
4. 로그인이 성공하면 모두 쿠키를 삭제하고 다음 SSO 버튼을 클릭합니다.
|
||||
5. 다음 SSO 버튼으로 반복 진행
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ class OAuth(BaseModel):
|
|||
|
||||
|
||||
class OAuthList(BaseModel):
|
||||
oauth_providers: List[OAuth]
|
||||
oauth_providers: List[str] # 이제 문자열 배열로 변경
|
||||
|
||||
|
||||
# 기존 모델 유지 (backward compatibility)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue