AutoPercenty/ai/bard_img.py

77 lines
2.6 KiB
Python

# from ai.unlock_cookies import fetch_cookies
# from bardapi.constants import SESSION_HEADERS
# from bardapi import Bard
import requests
import re
# def get_cookies(domain_name):
# """특정 도메인의 쿠키를 가져오는 함수"""
# # unlock_cookies 함수를 호출하여 쿠키 파일의 잠금을 해제하고,
# # 특정 도메인에 대한 쿠키를 가져옵니다.
# cookies = fetch_cookies(domain_name)
# #cookies = new_fetch_cookies(domain_name)
# print(f"cookies = {cookies}")
# # 쿠키를 딕셔너리 형태로 변환합니다.
# cookies_dict = {}
# for cookie in cookies:
# cookies_dict[cookie.name] = cookie.value
# return cookies_dict
# bard.google.com 도메인의 쿠키를 가져옵니다.
cookies = get_cookies(".google.com")
# 필요한 쿠키를 추출합니다.
token1 = cookies.get("__Secure-1PSID")
print(f"token1 = {token1}")
token2 = cookies.get("__Secure-1PSIDTS")
print(f"token2 = {token2}")
token3 = cookies.get("__Secure-1PSIDCC")
print(f"token3 = {token3}")
session = requests.Session()
session.headers = SESSION_HEADERS
session.cookies.set("__Secure-1PSID", token1)
session.cookies.set("__Secure-1PSIDTS", token2)
session.cookies.set("__Secure-1PSIDCC", token3)
bard = Bard(token=token1, session=session)
#print(bard.get_answer("나와 내 동년배들이 좋아하는 뉴진스에 대해서 알려줘")['content'])
#print(bard.get_answer("나와 내 동년배들이 좋아하는 뉴진스에 대해서 알려줘"))
def extract_numbered_lines(text):
# 정규 표현식 패턴: 숫자 + 점 + 공백으로 시작하고, 줄바꿈 문자가 나올 때까지의 내용을 찾음
pattern = r'\d\.\s.+?(?=\n|$)'
matches = re.findall(pattern, text)
return "\n".join(matches)
def bard_img(image_url):
# 이미지 URL
#image_url = 'https://file.percenty.co.kr/public/652bed8e865b1f32ea62bf1f/products/6575b191d39b6b71ccac77ce/a5ffe56b-3349-4dca-bc36-fa569a68c337.jpg'
# requests를 사용하여 이미지 다운로드
response = requests.get(image_url)
response.raise_for_status() # HTTP 요청 에러 체크
# 이미지 데이터를 Bard에 전달
image_data = response.content
bard_answer = bard.ask_about_image('이미지의 상품을 한국의 쇼핑몰에서 판매할때 적절한 홍보문구를 3줄로 만들어줘.', image_data)
contents = extract_numbered_lines(bard_answer['content'])
print("이미지 분석 결과입니다")
print(contents)
result = extract_numbered_lines(contents)
print("분석 결과 파싱 데이터입니다")
print(result)
return result