Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
python_open_ai
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
haojie
python_open_ai
Commits
0e5a1225
Commit
0e5a1225
authored
Apr 14, 2023
by
lei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
96e0bc22
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
38 additions
and
18 deletions
+38
-18
ai_pyppeteer.py
+38
-18
No files found.
ai_pyppeteer.py
View file @
0e5a1225
...
@@ -126,33 +126,44 @@ class ToWork:
...
@@ -126,33 +126,44 @@ class ToWork:
await
asyncio
.
sleep
(
1
)
await
asyncio
.
sleep
(
1
)
return
status
return
status
# 登录
async
def
login
(
self
,
page
):
async
def
login
(
self
,
page
):
user_name
=
'2897821407@qq.com'
"""
password
=
'lhj157839477'
登录
:param page:
:return:
"""
# 初始化return
result_obj
=
{
# 是否需要登录
'need_login'
:
False
,
# 状态
'status'
:
False
,
}
# 用户名
# 用户名
user_name_path
=
'//input[@name="email"]'
user_name_path
=
'//input[@name="email"]'
is_offline
=
await
self
.
FindElement
(
page
,
user_name_path
)
is_offline
=
await
self
.
FindElement
(
page
,
user_name_path
)
if
is_offline
:
if
is_offline
:
#
# 修改为需要登录状态
result_obj
[
'need_login'
]
=
True
logger
.
info
(
'账号掉线,重新登录'
)
logger
.
info
(
'账号掉线,重新登录'
)
name_el
=
await
page
.
waitForXPath
(
user_name_path
)
name_el
=
await
page
.
waitForXPath
(
user_name_path
)
await
name_el
.
type
(
user_name
,
{
"delay"
:
1
})
await
name_el
.
type
(
self
.
browser_item
[
'user_name'
]
,
{
"delay"
:
1
})
# 密码
# 密码
password_path
=
'//*[@name="password"]'
password_path
=
'//*[@name="password"]'
pwd_el
=
await
self
.
FindElement
(
page
,
password_path
)
pwd_el
=
await
self
.
FindElement
(
page
,
password_path
)
if
pwd_el
:
if
pwd_el
:
await
pwd_el
.
type
(
password
,
{
"delay"
:
1
})
await
pwd_el
.
type
(
self
.
browser_item
[
'password'
]
,
{
"delay"
:
1
})
# 判断输入的内容
# 判断输入的内容
user_name_value
=
await
page
.
evaluate
(
'(name_el) => name_el.value'
,
name_el
)
user_name_value
=
await
page
.
evaluate
(
'(name_el) => name_el.value'
,
name_el
)
password_value
=
await
page
.
evaluate
(
'(pwd_el) => pwd_el.value'
,
pwd_el
)
password_value
=
await
page
.
evaluate
(
'(pwd_el) => pwd_el.value'
,
pwd_el
)
if
user_name_value
==
user_name
and
password_value
==
password
:
if
user_name_value
==
self
.
browser_item
[
'user_name'
]
and
password_value
==
self
.
browser_item
[
'password'
]:
# 输入的值正确--点击登录
# 输入的值正确--点击登录
login_path
=
'//*[@id="app-mount"]/div[2]/div[1]/div[1]/div/div/div/div/form/div[2]/div/div[1]/div[2]/button[2]'
login_path
=
'//*[@id="app-mount"]/div[2]/div[1]/div[1]/div/div/div/div/form/div[2]/div/div[1]/div[2]/button[2]'
status
=
await
self
.
ElementClick
(
page
,
login_path
)
status
=
await
self
.
ElementClick
(
page
,
login_path
)
if
status
:
if
status
:
re
turn
True
re
sult_obj
[
'status'
]
=
True
return
False
return
result_obj
async
def
img_callback
(
self
,
task
,
href
,
message
=
''
):
async
def
img_callback
(
self
,
task
,
href
,
message
=
''
):
url
=
task
[
'callback'
]
url
=
task
[
'callback'
]
...
@@ -389,15 +400,22 @@ class ToWork:
...
@@ -389,15 +400,22 @@ class ToWork:
# 等待登录成功
# 等待登录成功
async
def
wait_login_success
(
self
,
page
):
async
def
wait_login_success
(
self
,
page
):
logger
.
info
(
'开始判断登录状态'
)
while
True
:
while
True
:
# 登录成功元素
try
:
page_load
=
'//div[contains(@aria-label, "测试服务器")]'
# 登录成功元素
login_success_el
=
await
self
.
FindElement
(
page
,
page_load
)
page_load
=
'//div[contains(@aria-label, "测试服务器")]'
if
login_success_el
:
login_success_el
=
await
self
.
FindElement
(
page
,
page_load
)
return
True
if
login_success_el
:
#
return
True
return
False
# 判断是否需要登录
res_obj
=
await
self
.
login
(
page
)
logger
.
info
(
'等待登录成功'
)
# 等待三秒
time
.
sleep
(
3
)
except
Exception
as
e
:
logger
.
info
(
e
)
# 等待三秒
time
.
sleep
(
3
)
async
def
specified_server
(
self
,
page
):
async
def
specified_server
(
self
,
page
):
try
:
try
:
...
@@ -476,7 +494,9 @@ if __name__ == '__main__':
...
@@ -476,7 +494,9 @@ if __name__ == '__main__':
'num'
:
1
,
'num'
:
1
,
# 'id': 'A1263FA0-7BBD-42F8-B048-75678D59654D',
# 'id': 'A1263FA0-7BBD-42F8-B048-75678D59654D',
# c
# c
'id'
:
'1FBCB385-2E09-4505-BF52-4B45099DBD08'
'id'
:
'1FBCB385-2E09-4505-BF52-4B45099DBD08'
,
'user_name'
:
'2897821407@qq.com'
,
'password'
:
'lhj157839477'
}
}
]
]
lock
=
Lock
()
lock
=
Lock
()
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment