Почти полная переработка всего rag
- включение qdrant в контур - использование нормальной эмб-модели - векторизация текста - README и туча мелочей
This commit is contained in:
60
rag/download.sh
Executable file
60
rag/download.sh
Executable file
@@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
|
||||
command -v curl >/dev/null 2>&1 || { echo >&2 "Ошибка: curl не установлен"; exit 1; }
|
||||
command -v jq >/dev/null 2>&1 || { echo >&2 "Ошибка: jq не установлен"; exit 1; }
|
||||
|
||||
if [ $# -lt 1 ]; then
|
||||
echo >&2 "Ошибка: не указан ID страницы для загрузки"
|
||||
echo "Использование: $0 <pageId>"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
[ ! -f .env ] && cp .env.example .env
|
||||
source .env
|
||||
|
||||
[ -z "$CONF_URL" ] && { echo >&2 "Ошибка: CONF_URL не указан в файле .env"; exit 1; }
|
||||
[ -z "$CONF_USERNAME" ] && { echo >&2 "Ошибка: CONF_USERNAME не указан в файле .env"; exit 1; }
|
||||
[ -z "$CONF_PASSWORD" ] && { echo >&2 "Ошибка: CONF_PASSWORD не указан в файле .env"; exit 1; }
|
||||
|
||||
PAGE_ID="$1"
|
||||
API_ENDPOINT="${CONF_URL}/rest/api/content/${PAGE_ID}?expand=body.view,children.page"
|
||||
|
||||
OUTPUT_PATH="./input_html"
|
||||
[ ! -d "$OUTPUT_PATH" ] && mkdir -p "$OUTPUT_PATH"
|
||||
|
||||
echo
|
||||
echo "Загрузка: $API_ENDPOINT"
|
||||
|
||||
response=$(curl -s -u "$CONF_USERNAME:$CONF_PASSWORD" -H "Accept: application/json" "${API_ENDPOINT}")
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "$response"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
error_message=$(echo "$response" | jq -r '.message' 2>/dev/null)
|
||||
if [ -n "$error_message" ] && [ "$error_message" != "null" ]; then
|
||||
echo "$response"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
title=$(echo "$response" | jq -r .title)
|
||||
content=$(echo "$response" | jq -r .body.view.value)
|
||||
|
||||
if [ -z "$content" ]; then
|
||||
echo "Пустая страница, пропущено"
|
||||
exit
|
||||
fi
|
||||
|
||||
path="$output_path/${title//\//_}.html"
|
||||
content=${content//href=\"\//href=\"$CONF_URL}
|
||||
content=${content//src=\"\//src=\"$CONF_URL}
|
||||
|
||||
url="$CONF_URL/pages/viewpage.action?pageId=$PAGE_ID"
|
||||
echo -e "@@$url@@\n<br><html><body>Исходная страница: <a href=$url>$url</a><br><br><h1>$title</h1>$content</body></html>" > "$path"
|
||||
echo "Сохранено: $output_path/$title.html"
|
||||
|
||||
child_ids=$(echo "$response" | jq -r '.children.page.results[]?.id' 2>/dev/null)
|
||||
for child_id in $child_ids; do
|
||||
echo "Переход к дочерней странице: $child_id"
|
||||
$0 "$child_id"
|
||||
done
|
||||
Reference in New Issue
Block a user