Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
U
UIProject
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
liying
UIProject
Commits
39aa5df3
Commit
39aa5df3
authored
Feb 08, 2024
by
liying
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
2.8提交
parent
32160b06
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
148 additions
and
12 deletions
+148
-12
misc.xml
.idea/misc.xml
+2
-1
businessKnowledge_page.py
Pages/businessKnowledge_page.py
+146
-11
No files found.
.idea/misc.xml
View file @
39aa5df3
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<project
version=
"4"
>
<project
version=
"4"
>
<component
name=
"ProjectRootManager"
version=
"2"
project-jdk-name=
"Python 3.
9 (UIProject
)"
project-jdk-type=
"Python SDK"
/>
<component
name=
"ProjectRootManager"
version=
"2"
project-jdk-name=
"Python 3.
8 (pythonProject01
)"
project-jdk-type=
"Python SDK"
/>
</project>
</project>
\ No newline at end of file
Pages/businessKnowledge_page.py
View file @
39aa5df3
import
time
import
time
from
selenium
import
webdriver
from
selenium
import
webdriver
from
selenium.webdriver
import
ActionChains
from
selenium.webdriver.common.by
import
By
from
selenium.webdriver.common.by
import
By
from
BasePage.BasePage
import
BasePage
from
BasePage.BasePage
import
BasePage
...
@@ -11,21 +12,53 @@ from Util.Util import DriverUtils
...
@@ -11,21 +12,53 @@ from Util.Util import DriverUtils
企业知识库--页面操作
企业知识库--页面操作
"""
"""
class
BusinessKnowledgePage
(
BasePage
):
class
BusinessKnowledgePage
(
BasePage
):
def
__init__
(
self
):
def
__init__
(
self
):
super
()
.
__init__
()
super
()
.
__init__
()
self
.
ai_editing
=
(
By
.
XPATH
,
'//*[@id="App"]/div/header/div[2]/div[2]'
)
# AI编辑工作室按钮
self
.
ai_editing
=
(
By
.
XPATH
,
'//*[@id="App"]/div/header/div[2]/div[2]'
)
# AI编辑工作室按钮
self
.
business_knowledge
=
(
By
.
XPATH
,
'//*[@id="App"]/div/div/div[2]/ul/li[3]/div/div/span'
)
# 企业知识库按钮
self
.
business_knowledge
=
(
By
.
XPATH
,
'//*[@id="App"]/div/div/div[2]/ul/li[3]/div/div/span'
)
# 企业知识库按钮
self
.
quit
=
(
By
.
XPATH
,
'//*[@id="App"]/div/section/div[1]/div[1]/div[1]/button/span'
)
# 返回
self
.
quit
=
(
By
.
XPATH
,
'//*[@id="App"]/div/section/div[1]/div[1]/div[1]/button/span'
)
# 返回
self
.
newFolder
=
(
By
.
XPATH
,
'//*[@id="App"]/div/section/div[1]/div[2]/div/div/div[1]/button[2]/span'
)
# 新建文件夹
self
.
folderName
=
(
By
.
XPATH
,
'//*[@id="folderName"]'
)
# 输入文件夹名
self
.
folders
=
(
By
.
XPATH
,
'//*[@id="App"]/div/section/div[1]/div[2]/div/div/div[1]/div[2]'
)
# 文件夹列表
self
.
newFolder
=
(
By
.
XPATH
,
'//*[@id="App"]/div/section/div[1]/div[2]/div/div/div[1]/button[2]/span'
)
# 新建文件夹
self
.
folderName
=
(
By
.
XPATH
,
'//*[@id="folderName"]'
)
# 输入文件夹名
self
.
ensure
=
(
By
.
XPATH
,
'/html/body/div[3]/div/div[2]/div/div[2]/div[3]/button[2]/span'
)
# 确定按钮
self
.
more
=
(
By
.
XPATH
,
'//*[@id="App"]/div/section/div[1]/div[2]/div/div/div[1]/div[2]/div[3]/i'
)
# 更多
self
.
updateFolderName
=
(
By
.
XPATH
,
'/html/body/div[3]/div/div/ul/li[1]/span/div'
)
# 修改名称
self
.
deleteFolder
=
(
By
.
XPATH
,
'/html/body/div[3]/div/div/ul/li[2]/span/div'
)
# 删除
self
.
ensureDelete
=
(
By
.
XPATH
,
'/html/body/div[4]/div/div[2]/div/div[2]/div[3]/button[2]/span'
)
# 确认
self
.
searchInputText
=
(
By
.
XPATH
,
'//*[@id="App"]/div/section/div[1]/div[2]/div/div/div[1]/div[1]/span/input'
)
# 搜索文本框
self
.
subscriptionWebsiteButton
=
(
By
.
XPATH
,
'//*[@id="App"]/div/section/div[1]/div[2]/div/div/div[1]/button[1]'
)
# 订阅网站
self
.
updateWebsiteFrequencySelect
=
(
By
.
XPATH
,
'/html/body/div[3]/div/div[2]/div/div[2]/div[2]/div/form/div[2]/div/div[2]/div/div/div'
)
# 更新网站频率
self
.
updateWebsiteFrequencyDataDiv
=
(
By
.
XPATH
,
'/html/body/div[4]/div/div/div/div[2]/div[1]/div/div'
)
# 更新频率数据
# 订阅网站列表
self
.
subscriptionWebsiteListDiv
=
(
By
.
XPATH
,
'//*[@id="website"]/div/div[2]/div[1]'
)
# 确定订阅
self
.
ensureSubscriptionWebsite
=
(
By
.
XPATH
,
'/html/body/div[3]/div/div[2]/div/div[2]/div[3]/div/button[2]/span'
)
# 清空
self
.
clearButton
=
(
By
.
XPATH
,
'//*[@id="website"]/div/div[1]/span[2]/span[2]'
)
# 去除
self
.
removeButton
=
(
By
.
XPATH
,
'//*[@id="website"]/div/div[2]/div[2]/div[1]/div/div[1]/div[2]'
)
"""
通用
"""
# 进入AI编辑工作室
# 进入AI编辑工作室
def
entranceAi
(
self
):
def
entranceAi
(
self
):
self
.
find_el
(
self
.
ai_editing
)
.
click
()
self
.
find_el
(
self
.
ai_editing
)
.
click
()
# 进入企业知识库
# 进入企业知识库
def
entranceBusinessKnowledge
(
self
):
def
entranceBusinessKnowledge
(
self
):
self
.
find_el
(
self
.
business_knowledge
)
.
click
()
self
.
find_el
(
self
.
business_knowledge
)
.
click
()
# 返回/首页 退出
# 返回/首页 退出
def
quitBusinessKnowledge
(
self
):
def
quitBusinessKnowledge
(
self
):
self
.
find_el
(
self
.
quit
)
.
click
()
self
.
find_el
(
self
.
quit
)
.
click
()
...
@@ -34,20 +67,110 @@ class BusinessKnowledgePage(BasePage):
...
@@ -34,20 +67,110 @@ class BusinessKnowledgePage(BasePage):
文件夹管理
文件夹管理
"""
"""
# 新建文件夹操作
# 新建文件夹操作 输入长度测试点
def
newFolderControl
(
self
):
def
newFolderControl
(
self
,
folderNameInput
=
None
):
self
.
find_el
(
self
.
newFolder
)
.
click
()
self
.
find_el
(
self
.
newFolder
)
.
click
()
# 弹出输入框
self
.
input_text
(
self
.
folderName
,
"测试文件夹"
)
self
.
input_text
(
self
.
folderName
,
folderNameInput
)
# 输入文件夹名称
self
.
find_el
(
self
.
ensure
)
.
click
()
# 点击确认
# 删除文件夹
def
deleteFolderControl
(
self
):
self
.
find_el
(
self
.
more
)
.
click
()
# 点击更多
time
.
sleep
(
1
)
self
.
find_el
(
self
.
deleteFolder
)
.
click
()
# 弹出二次删除弹框
time
.
sleep
(
1
)
self
.
find_el
(
self
.
ensureDelete
)
.
click
()
# 点击确认删除
# 修改文件夹
def
updateFolderControl
(
self
,
updateFolderName
=
None
):
self
.
find_el
(
self
.
more
)
.
click
()
# 点击更多
time
.
sleep
(
1
)
self
.
find_el
(
self
.
updateFolderName
)
.
click
()
# 弹出修改弹框
self
.
input_text
(
self
.
folderName
,
updateFolderName
)
time
.
sleep
(
1
)
self
.
find_el
(
self
.
ensureDelete
)
.
click
()
# 点击确认
# 遍历点击文件夹
def
traverseFolder
(
self
):
elementSpans
=
self
.
find_el
(
self
.
folders
)
.
find_elements
(
'tag name'
,
'span'
)
for
elementSpan
in
elementSpans
:
elementSpan
.
click
()
time
.
sleep
(
2
)
"""
"""
搜索文档
搜索文档
"""
"""
# 搜索
def
searchDocument
(
self
,
keyName
=
None
):
self
.
input_text
(
self
.
searchInputText
,
keyName
)
time
.
sleep
(
2
)
"""
"""
网站订阅
网站订阅
"""
"""
# 点击订阅网站 弹出弹框
def
subscriptionWebsiteStart
(
self
):
self
.
find_el
(
self
.
subscriptionWebsiteButton
)
.
click
()
# 订阅频率选中-根据optionName进行选中
def
subscriptionWebsiteFrequencySelect
(
self
,
optionName
=
None
):
self
.
find_el
(
self
.
updateWebsiteFrequencySelect
)
.
click
()
# 点击更新频率
time
.
sleep
(
2
)
# 获取到全部数据
elementsFrequencyOptions
=
self
.
find_el
(
self
.
updateWebsiteFrequencyDataDiv
)
.
find_elements
(
By
.
XPATH
,
'/html/body/div[4]/div/div/div/div[2]/div[1]/div/div/div[contains(@class, "ant-select-item")]'
)
# 订阅频率选择
for
elementsFrequencyOption
in
elementsFrequencyOptions
:
# 模拟鼠标悬停到选项上
ActionChains
(
driver
)
.
move_to_element
(
elementsFrequencyOption
)
.
perform
()
time
.
sleep
(
1
)
# 模拟点击选项
if
optionName
==
elementsFrequencyOption
.
text
:
elementsFrequencyOption
.
click
()
break
# 选中订阅的网站
def
subscriptionWebsiteSelect
(
self
,
optionsName
=
None
):
subscriptionWebsiteOptions
=
self
.
find_el
(
self
.
subscriptionWebsiteListDiv
)
.
find_elements
(
By
.
XPATH
,
'//*[@id="website"]/div/div[2]/div[1]/div[contains(@class,"website-item")]'
)
subscriptionWebsiteOptionTexts
=
self
.
find_el
(
self
.
subscriptionWebsiteListDiv
)
.
finf_elements
(
By
.
XPATH
,
'//*[@id="website"]/div/div[2]/div[1]/div/label/span[2]/div/div/div'
)
for
subscriptionWebsiteOption
,
subscriptionWebsiteOptionText
in
zip
(
subscriptionWebsiteOptions
,
subscriptionWebsiteOptionTexts
):
subscriptionWebsiteOption
.
click
()
# 选中
# 网站订阅-整个流程
def
subscriptionWebsite
(
self
):
self
.
find_el
(
self
.
subscriptionWebsiteButton
)
.
click
()
# 点击订阅网站 弹出弹框
time
.
sleep
(
2
)
self
.
find_el
(
self
.
updateWebsiteFrequencySelect
)
.
click
()
# 点击更新频率
time
.
sleep
(
2
)
# 获取到全部数据
elementsFrequencyOptions
=
self
.
find_el
(
self
.
updateWebsiteFrequencyDataDiv
)
.
find_elements
(
By
.
XPATH
,
'/html/body/div[4]/div/div/div/div[2]/div[1]/div/div/div[contains(@class, "ant-select-item")]'
)
count
=
0
# 订阅频率选择
for
elementsFrequencyOption
in
elementsFrequencyOptions
:
# time.sleep(1)
# self.find_el(self.updateWebsiteFrequencySelect).click() # 点击更新频率
# time.sleep(1)
# 模拟鼠标悬停到选项上
ActionChains
(
driver
)
.
move_to_element
(
elementsFrequencyOption
)
.
perform
()
time
.
sleep
(
1
)
count
=
count
+
1
# 模拟点击选项
if
(
count
==
len
(
elementsFrequencyOptions
)):
elementsFrequencyOption
.
click
()
# 选择订阅的网站
subscriptionWebsiteOptions
=
self
.
find_el
(
self
.
subscriptionWebsiteListDiv
)
.
find_elements
(
By
.
XPATH
,
'//*[@id="website"]/div/div[2]/div[1]/div[contains(@class,"website-item")]'
)
for
subscriptionWebsiteOption
in
subscriptionWebsiteOptions
:
subscriptionWebsiteOption
.
click
()
# 选中
# 确定订阅
self
.
find_el
(
self
.
ensureSubscriptionWebsite
)
.
click
()
"""
"""
上传文档
上传文档
"""
"""
...
@@ -73,8 +196,6 @@ class BusinessKnowledgePage(BasePage):
...
@@ -73,8 +196,6 @@ class BusinessKnowledgePage(BasePage):
"""
"""
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
driver
=
DriverUtils
.
get_web_driver
()
driver
=
DriverUtils
.
get_web_driver
()
driver
.
get
(
'https://rays7.raysgo.com/login'
)
driver
.
get
(
'https://rays7.raysgo.com/login'
)
...
@@ -85,5 +206,19 @@ if __name__ == '__main__':
...
@@ -85,5 +206,19 @@ if __name__ == '__main__':
businessKnowledge
.
entranceAi
()
businessKnowledge
.
entranceAi
()
time
.
sleep
(
1
)
time
.
sleep
(
1
)
businessKnowledge
.
entranceBusinessKnowledge
()
businessKnowledge
.
entranceBusinessKnowledge
()
businessKnowledge
.
newFolderControl
()
time
.
sleep
(
1
)
time
.
sleep
(
2
)
businessKnowledge
.
subscriptionWebsiteStart
()
time
.
sleep
(
1
)
businessKnowledge
.
subscriptionWebsiteFrequencySelect
(
"三天更新一次"
)
time
.
sleep
(
1
)
# businessKnowledge.newFolderControl("文件夹名称188")
# time.sleep(2)
# while 1:
# businessKnowledge.deleteFolderControl()
# time.sleep(2)
# # # businessKnowledge.updateFolderControl()
# # businessKnowledge.traverseFolder()
# # businessKnowledge.searchDocument("1")
# businessKnowledge.subscriptionWebsite()
# time.sleep(2)
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