Spaces:
Sleeping
Sleeping
# Installing and Importing all these packages 🖤 | |
from time import sleep # Inbuilt | |
from selenium import webdriver # pip install selenium | |
from selenium.webdriver.chrome.options import Options # pip install selenium | |
from selenium.webdriver.common.by import By # pip install selenium | |
import warnings # Inbuilt | |
from selenium.webdriver.chrome.service import Service | |
import streamlit as st | |
# Configuring the webdriver to automate the program for utilizing ChatGPT as a backend model. | |
warnings.simplefilter("ignore") | |
try: | |
Link = "https://chat.openai.com/c/58ea6e4a-67e3-460e-99c8-8e701f863534" | |
chrome_driver_path = 'chromedriver.exe' | |
chrome_options = Options() | |
# chrome_options.headless = True | |
chrome_options.add_experimental_option('excludeSwitches', ['enable-logging']) | |
chrome_options.add_argument('--log-level=3') | |
service = Service(chrome_driver_path) | |
driver = webdriver.Chrome(service=service, options=chrome_options) | |
driver.maximize_window() | |
driver.get(Link) | |
st.write("Worked till here") | |
except Exception as e: | |
print("To resolve this error, you should set up the ChromeDriver properly.") | |
print("*For the successful execution of this program, it is essential to configure and set up the ChromeDriver.") | |
print(e) | |
# Storing the previous conversation ID for reference. | |
def FileReader(): | |
try: | |
File = open("Chatnumber.txt","r") | |
Data = File.read() | |
File.close() | |
return Data | |
except Exception as e: | |
print(e) | |
# Reading the previous conversation ID for reference. | |
def FileWriter(Data): | |
try: | |
File = open("Chatnumber.txt","w") | |
File.write(Data) | |
File.close() | |
except Exception as e: | |
print(e) | |
# Initiating the primary execution phase while utilizing ChatGPT as the backend model. | |
def ChatGPTBrain(Query): | |
Query = str(Query) | |
try: | |
driver.find_element(by=By.XPATH,value="/html/body/div[1]/div[1]/div/main/div[1]/div[2]/form/div/div[1]/div/textarea").send_keys(Query) | |
sleep(1) | |
except: | |
st.write("*The Input button or Input Section does not appear to be readily accessible or available within the current context or environment.*") | |
st.write("*Consider modifying the path for the 'Input' element, which is available on the website.*") | |
try: | |
driver.find_element(by=By.XPATH,value="/html/body/div[1]/div[1]/div/main/div[1]/div[2]/form/div/div[1]/div/button").click() | |
except: | |
st.write("*The Send.Keys() function or button does not appear to be readily accessible or available within the current context or environment.*") | |
st.write("*Consider modifying the path for the 'Send' button, which is available on the website.*") | |
try: | |
Data = str(FileReader()) | |
except: | |
st.write("*Could Not Be able to access the file Where Chatnumber is saved for reference.") | |
while True: | |
sleep(0.5) | |
try: | |
try: | |
AnswerXpath = f"/html/body/div[1]/div[1]/div/main/div[1]/div[1]/div/div/div/div[2]/div{Data}" | |
Answer = driver.find_element(by=By.XPATH,value=AnswerXpath).is_displayed() | |
if str(Answer)=="True": | |
break | |
except: | |
# print("*The response text element cannot be located. Please ensure that you update its selector or locator.") | |
pass | |
except: | |
pass | |
try: | |
AnswerXpath = f"/html/body/div[1]/div[1]/div/main/div[1]/div[1]/div/div/div/div[4]/div{Data}" | |
Answer = driver.find_element(by=By.XPATH,value=AnswerXpath).text | |
except: | |
st.write("*The response text element cannot be located. Please ensure that you update its selector or locator.") | |
NewData = int(Data) + 2 | |
FileWriter(Data=str(NewData)) | |
return Answer | |
# Commencing the main execution phase. | |
def MainExecutionChatGPT(): | |
st.write("") | |
st.write("Initiating the GPT-4 model.") | |
FileWriter(Data='3') | |
if uinput := st.chat_input("Enter your query: "): | |
answer = ChatGPTBrain(uinput) | |
with st.chat_message("assistant"): | |
st.write(answer) | |
# while True: | |
# try: | |
# File = open("Body\\SpeechRecognition.txt","r") | |
# Data = File.read() | |
# File.close() | |
# FileHistory = open("Brain\\HistoryChat.txt","r") | |
# DataHistory = FileHistory.read() | |
# FileHistory.close() | |
# if str(Data)==str(DataHistory): | |
# sleep(0.5) | |
# pass | |
# else: | |
# Result = ChatGPTBrain(Data) | |
# print(Result) | |
# FileHistory = open("Brain\\HistoryChat.txt","w") | |
# FileHistory.write(Data) | |
# FileHistory.close() | |
# except Exception as e: | |
# print(e) | |
MainExecutionChatGPT() |