# 랜덤부분 귀찮아서 대충만들었다
# imports
from selenium import webdriver
from selenium.webdriver import FirefoxOptions
import time
import random
# define bcolor for usgae
class bcolors:
HEADER = '\033[95m'
OKBLUE = '\033[94m'
OKCYAN = '\033[96m'
OKGREEN = '\033[92m'
WARNING = '\033[93m'
FAIL = '\033[91m'
ENDC = '\033[0m'
BOLD = '\033[1m'
UNDERLINE = '\033[4m'
opts = FirefoxOptions()
opts.add_argument("--headless") # headless mode for displayless ubuntu servers.
# options to look like human
opts.add_argument("disable-gpu")
opts.add_argument("lang=ko_KR")
opts.add_argument('Mozilla/5.0 (Windows NT 4.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2049.0 Safari/537.36')
# generates browser
browser = webdriver.Firefox(options=opts)
while 1==1: # infinite loop
browser.get("https://arca.live/b/random") # get random chatting page
print(f"{bcolors.OKGREEN}{bcolors.BOLD}[Selenium]{bcolors.ENDC}{bcolors.OKBLUE} Connection with page successful. Waiting for load..\n{bcolors.ENDC}") # log
time.sleep(3) # wait for load
# print(browser.page_source) # debug code
print(f"{bcolors.OKGREEN}{bcolors.BOLD}[Selenium]{bcolors.ENDC}{bcolors.WARNING} Finding Connect Button Element..\n{bcolors.ENDC}") # log
button = browser.find_element_by_xpath("/html/body/div[2]/div[3]/article/div[1]/div/div[4]/button") # get button element
button.click() # click to connect
time.sleep(3) # wait for load
# print(browser.page_source) # debug code
check = browser.find_element_by_xpath("/html/body/div[2]/div[3]/article/div[1]/div/div[3]") # get div
while check.get_attribute("style")=="display: none;":
time.sleep(0.25)
# print(browser.page_source)
print(f"{bcolors.OKGREEN}{bcolors.BOLD}[Selenium]{bcolors.ENDC}{bcolors.OKBLUE} Connection Successful!\n{bcolors.ENDC}")
inputbox = browser.find_element_by_xpath("/html/body/div[2]/div[3]/article/div[1]/div/div[3]/div/input") # get input element
sendbtn = browser.find_element_by_xpath("/html/body/div[2]/div[3]/article/div[1]/div/div[3]/button")
inputbox.send_keys("아카라이브 도우미봇 (유저가 만듬) 시험 가동 중입니다.")
sendbtn.click()
time.sleep(0.5)
inputbox.send_keys("온도계 추천은 1, 나무게임 추천은 2, 채팅 종료는 3 또는 exit을 입력해 주세요.")
sendbtn.click()
chatdiv = browser.find_element_by_xpath("/html/body/div[2]/div[3]/article/div[1]/div/div[2]")
child = chatdiv.find_elements_by_tag_name("div")
cnt = len(child)
while check.get_attribute("style")=="display: block;":
child = chatdiv.find_elements_by_tag_name("div")
if len(child) > cnt:
gotstr=child[cnt].get_attribute('innerHTML')[45:]
print("got> "+gotstr)
if gotstr == "1":
inputbox.send_keys("예상 온도는 "+str(random.randrange(1,100))+"°C 입니다. 다만 너무 맹신하지 마세요.")
sendbtn.click()
elif gotstr == "2":
inputbox.send_keys("예상 번호는 "+str(random.randrange(1,6))+"번 입니다. 다만 너무 맹신하지 마세요.")
sendbtn.click()
elif gotstr == "exit" or gotstr == "3":
exitbtn = browser.find_element_by_xpath("/html/body/div[2]/div[3]/article/div[1]/div/div[1]/button")
exitbtn.click()
time.sleep(0.25)
break
else:
inputbox.send_keys("잘못된 번호 입니다.")
sendbtn.click()
time.sleep(0.5)
inputbox.send_keys("온도계 추천은 1, 나무게임 추천은 2, 채팅 종료는 exit을 입력해 주세요.")
sendbtn.click()
child = chatdiv.find_elements_by_tag_name("div")
cnt = len(child)
else:
time.sleep(0.25)
# print(browser.page_source)
print("Connection Ended")
browser.quit()
구독자 3152명
알림수신 258명
랜덤채팅
랜챗봇 파이썬 코드 뿌린다
추천
4
비추천
2
댓글
3
조회수
356
작성일
수정일
댓글
[3]
시크한_청록_벌
씩씩한_하얀_벌
굼뜬_주황_낙지
본 게시물에 댓글을 작성하실 권한이 없습니다.
로그인 하신 후 댓글을 다실 수 있습니다. 아카라이브 로그인
최근
최근 방문 채널
최근 방문 채널
번호
제목
작성일
조회수
추천
이게뭐노?
280
0
내가 이겼다
[1]
281
-1
아니
189
0
안녕하세요
202
2
엇 채팅 나가졌다.
119
0
사람 거의 다 빠졌노
148
0
모바일앱에서 어떻게 하는거냐
[3]
260
0
야짤 수집하는 새끼가 포하항거리니까 좀 웃기농
[1]
288
0
야 이거 진짜녀
[8]
604
3
어떻게 대머리가
209
2
같이 해준다면서
[1]
270
5
단합
167
1
이새키뭐야
[2]
284
2
이건예상 못했네
[4]
308
3
시발
185
0
랜챗봇 파이썬 코드 뿌린다
[3]
356
2
뭐노
153
0
봇돌리는데 이거누구냐
407
0
드디어 성공했다
175
3
왜 여기 글쓰면 닉네임 바뀜?
[6]
256
0
송장송장 화이팅ㅋㅋㅋ
100
0
에이 이걸 틀리겠냐
[4]
343
3
봇돌리는거 진짜다 꼭봐라
[3]
359
0
같이 놀아주다가 튄놈 누구냐???????
[1]
241
0
좆밥 ㅋㅋ
[1]
208
0
이건또뭐냐 ㅋㅋ
[1]
151
0
염불하는 게이보고 많이 사그라들었다
115
1
가짜는 진짜를 이길수 없다
303
0
대체 왜
[1]
205
0
블아하는 농협계좌 게이야
[6]
322
0