test
This commit is contained in:
parent
06c050a73e
commit
a8311edc14
2
.gitignore
vendored
2
.gitignore
vendored
@ -122,6 +122,8 @@ celerybeat.pid
|
||||
|
||||
# Environments
|
||||
.env
|
||||
.env.dev
|
||||
.env.prd
|
||||
.venv
|
||||
env/
|
||||
venv/
|
||||
|
24
README.md
24
README.md
@ -1,2 +1,26 @@
|
||||
# wp-post-automation
|
||||
워드프레스 포스팅 자동화 프로젝트.
|
||||
make.com을 이용해서 만든 AutoMation Flow를 Python을 이용하여 변환.
|
||||
## 기존 Flow
|
||||
* MariaDB에 저장된 최신 참고 url정보를 얻어온다.
|
||||
* HTTP모듈을 이용하여 참고 자료를 가져온다.
|
||||
* 가져온 HTML형태의 자료를 Text만 추출한다.
|
||||
* OpenAI를 이용하여 블로그 형태로 변환한다.
|
||||
* OpenAI를 이용하여 블로그 제목을 생성한다.
|
||||
* OpenAI를 이용하여 제목을 참고하여 섬네일을 생성한다.
|
||||
* 생성된 자료들을 이용하여 HTML형식으로 변환한다.
|
||||
* WordPress에 이미지를 등록한다.
|
||||
* WordPress에 포스팅을 한다.
|
||||
|
||||
## 개발 계획
|
||||
* 기존 Flow를 Python으로 개발한다.
|
||||
* 트리거가 발생하면 실행시키는 컨테이너로 빌드한다.
|
||||
* kubectl create -f file.yaml을 이용하여 1회성 동작 하도록 구현한다.
|
||||
|
||||
### Python 개발 순서
|
||||
* DB에서 url을 가져오는 코드작성.
|
||||
* url을 이용해서 파싱하고 텍스트만 추출하는 기능 구현.
|
||||
* OpenAI이용 코드 작성.
|
||||
* HTML문서 변환 코드 작성.
|
||||
* 워드프레스 등록 플로우 코드 작성.
|
||||
* 코드 리팩토링.
|
45
get_url.py
Normal file
45
get_url.py
Normal file
@ -0,0 +1,45 @@
|
||||
import mysql.connector
|
||||
from dotenv import load_dotenv
|
||||
import os
|
||||
|
||||
# .env.demo 파일 로드
|
||||
load_dotenv(r'./.env.dev')
|
||||
# 환경 변수 가져오기
|
||||
host = os.getenv('DB_HOST')
|
||||
user = os.getenv('DB_USER')
|
||||
password = os.getenv('DB_PASSWORD')
|
||||
database = os.getenv('DB_NAME')
|
||||
# MariaDB에 연결하는 함수
|
||||
def fetch_data_from_mariadb():
|
||||
try:
|
||||
# 데이터베이스 연결
|
||||
connection = mysql.connector.connect(
|
||||
host=host,
|
||||
user=user,
|
||||
password=password,
|
||||
database=database
|
||||
)
|
||||
|
||||
# 커서 생성
|
||||
cursor = connection.cursor(dictionary=True)
|
||||
|
||||
# 쿼리 실행
|
||||
query = "SELECT * FROM healty_url_source ORDER BY idx DESC LIMIT 1;"
|
||||
cursor.execute(query)
|
||||
|
||||
# 결과 가져오기
|
||||
result = cursor.fetchone()
|
||||
return result
|
||||
|
||||
except mysql.connector.Error as err:
|
||||
print(f"Error: {err}")
|
||||
finally:
|
||||
if connection.is_connected():
|
||||
cursor.close()
|
||||
connection.close()
|
||||
|
||||
if __name__ == "__main__":
|
||||
# 결과 확인
|
||||
data = fetch_data_from_mariadb()
|
||||
print(data['url'])
|
||||
|
0
translate_article.py
Normal file
0
translate_article.py
Normal file
Loading…
Reference in New Issue
Block a user