2022-10-29 20:46:20 +07:00
|
|
|
import requests
|
|
|
|
from selenium import webdriver
|
|
|
|
from selenium.webdriver.chrome.options import Options
|
|
|
|
import time
|
|
|
|
from datetime import datetime
|
|
|
|
import base64
|
|
|
|
|
|
|
|
from selenium.webdriver.chrome.options import Options
|
|
|
|
|
|
|
|
key = "API_KEY"
|
|
|
|
|
|
|
|
while(1):
|
|
|
|
try:
|
|
|
|
now = datetime.now()
|
|
|
|
dt_string = now.strftime("%d-%m-%Y %H:%M:%S")
|
|
|
|
|
|
|
|
options = Options()
|
|
|
|
options.add_argument('--headless')
|
|
|
|
options.add_argument('--disable-gpu')
|
|
|
|
browser = webdriver.Chrome(executable_path="/usr/bin/chromedriver", chrome_options=options)
|
|
|
|
|
|
|
|
browser.delete_all_cookies()
|
|
|
|
browser.get("https://finance.yahoo.com/quote/IDR=X")
|
|
|
|
|
|
|
|
time.sleep(5)
|
|
|
|
|
|
|
|
|
|
|
|
harga = browser.find_element_by_xpath("//*[@id=\"quote-header-info\"]/div[3]/div[1]/div/fin-streamer[1]").get_attribute('textContent')
|
|
|
|
price_change = browser.find_element_by_xpath("//*[@id=\"quote-header-info\"]/div[3]/div[1]/div/fin-streamer[2]/span").get_attribute('textContent')
|
|
|
|
change = browser.find_element_by_xpath("//*[@id=\"quote-header-info\"]/div[3]/div[1]/div/fin-streamer[3]/span").get_attribute('textContent')
|
|
|
|
last_update = browser.find_element_by_xpath("//*[@id=\"quote-market-notice\"]/span").get_attribute('textContent')
|
|
|
|
|
|
|
|
|
2022-11-03 08:51:41 +07:00
|
|
|
if "+" in change:
|
|
|
|
sym = "#40ff00"
|
|
|
|
sym2 = "🟢"
|
|
|
|
else:
|
|
|
|
sym = "#ff0000"
|
|
|
|
sym2 = "🔴"
|
|
|
|
|
|
|
|
|
|
|
|
payload = harga + "=" + price_change + "=" + change + "=" + last_update + "=" + dt_string + " GMT+7" + "=" + sym + "=" + sym2 + "=" + key
|
2022-10-29 20:46:20 +07:00
|
|
|
|
|
|
|
|
|
|
|
print(payload)
|
|
|
|
|
|
|
|
payload_encoded = base64.b64encode(bytes(payload, 'utf-8'))
|
|
|
|
|
|
|
|
print(payload_encoded.decode('utf-8'))
|
|
|
|
|
|
|
|
response = requests.get('https://api.gabrielkheisa.xyz/stocks/usdidr/index.php?q='+str(payload_encoded.decode('ascii')))
|
|
|
|
|
|
|
|
browser.quit()
|
|
|
|
print("Sleep for 1 hour")
|
|
|
|
time.sleep(60*60)
|
|
|
|
|
|
|
|
except:
|
|
|
|
print("Error gak jelas, skip")
|
|
|
|
browser.quit()
|