[ 셀레니움으로 네이버 검색하기]
GPTs를 활용하여 셀레니움을 활용해 네이버에 ‘chatgpt’를 검색하는 파이썬 코드를 만들어 달라고 요청.
웹드라이버 설치가 필요하다고 해서 인터넷을 검색하여 ‘ChromeDriver’ 다운로드
크롬 버전을 확인하고, 맞는 윈도우 버전의 크롬 웹드라이버를 다운로드
(다운로드 URL : https://chromedriver.chromium.org/downloads )
하지만 오류가 계속 발생. gpt에 오류를 계속 복붙하면서 수정.
여러 시도 끝에 완성된 코드.
미션 답안의 코드는 경로 설정을 안해도 된다니 신세계입니다.
from /selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By # By 클래스 임포트
import time
# ChromeDriver 서비스 설정
s = Service("웹드라이버_경로_입력")
driver = webdriver.Chrome(service=s)
# URL 열기
driver.get('https://www.naver.com/')
# XPath를 사용하여 검색 창 찾기 (By.XPATH 사용)
search_box = driver.find_element(By.XPATH, '//*[@id="query"]')
# 'chatgpt' 검색어 입력 및 검색 실행
search_box.send_keys('chatgpt')
search_box.send_keys(Keys.RETURN)
# 결과를 확인하기 위해 잠시 대기
time.sleep(5)
# 브라우저 닫기
driver.quit()
[API 활용 블로그 글쓰기]
미션의 어려움을 직감하고, 답안을 살짝 컨닝을 했습니다.
‘openai.completion.craete’ 관련 오류 발생.
먼저 미션하신 다른 분들을 참고해서 버전 관련 오류라는 것을 어렴풋이 이해. 하지만 오류를 계속 수정해도 진도가 나가지 않음.
파이참 터미널 오류 메세지에 문득 `pip install openai==0.28` 문구가 눈에 띔.
(버전을 낮춰서 실행하니 정상적으로 동작😀)
Alternatively, you can pin your installation to the old version, e.g. `pip install openai==0.28`
답안 코드를 바탕으로 제가 기획하려던 ‘여행 준비 체크리스트’ 내용 작성도 가능하겠다 싶어 ‘사용자 입력사항 프롬포트’를 약간 변경했습니다.
import openai
# OPENAI API 키 설정
openai.api_key = ''
def generate_blog_content():
# 모델 선택
model_choice = input("사용할 모델을 선택해주세요 (1: gpt-3.5-turbo, 2: gpt-4-turbo-preview): ")
model = "gpt-3.5-turbo" if model_choice == '1' else "gpt-4-turbo-preview"
# 사용자 입력사항
city = input("방문도시 또는 국가: ")
travel_period = input("여행 기간: ")
nationality = input("여행자 국적:")
group = input("여행자 구성원:")
travel_type = input("여행 성격(관광, 먹거리, 쇼핑, 휴양 등):")
airline = input("항공사:")
transportation_preference = input("현지 교통수단(대중교통, 기차, 렌트카 등):")
# 사용자 입력을 바탕으로 프롬프트 구성
system_prompt = f"이 글은 사용자에게 {travel_period}에 맞춘 {city}의 여행 정보를 제공합니다. {city}의 날씨 정보, 옷차림 권장 사항, {city}에서 사용되는 전압 및 플러그 타입, {nationality} 여행자를 위한 환전, 비자, 면세범위, {airline}의 항공 수하물 규정, {transportation_preference} 이용에 대한 팁, {group}과 {travel_type}을 고려한 추가적인 여행 준비물이나 유용한 팁을 포함합니다. 네이버 SEO에 최적화된 글을 작성하세요."
user_prompt = f"{city}에 대한 여행 정보를 간략히 알려주세요. 방문도시: {city}, 여행 기간: {travel_period}, 여행자 국적: {nationality}, 여행 구성원: {group}, 여행 성격: {travel_type}, 항공사: {airline}, 현지 교통수단: {transportation_preference}"
assistant_prompt = "네이버 SEO를 고려하여, 사용자의 질문에 답변하는 형태로 글을 구성합니다."
try:
# OPENAI API를 통해 글 생성
response = openai.ChatCompletion.create(
model=model,
messages=[
{"role": "system", "content": system_prompt},
{"role": "user", "content": user_prompt},
{"role": "assistant", "content": assistant_prompt}
]
)
# 생성된 글 출력
print("\n생성된 블로그 컨텐츠:")
print(response.choices[0].message['content'])
except Exception as e:
print("컨텐츠 생성 중 오류가 발생했습니다:", e)
if __name__ == "__main__":
generate_blog_content()
출력 결과. 다소 문장이 딱딱하지만 원하는 내용을 어느 정도 출력해준 것 같습니다.
GPT를 활용해서 블로그에 넣을 이미지 생성
생성한 텍스트와 이미지를 블로그에 포스팅✈️
(포스팅한 블로그 URL: 싱가폴 해외여행 체크리스트 )
#문과생도AI, #9기, #3주차과제