skip to content
barorin&?

Streamlit Community Cloudを無料でもスリープさせない方法

/ 2 min read

Table of Contents

はじめに

Streamlit Community Cloudは、無料で手軽にStreamlitアプリケーションをホストできる便利なサービスですが、 無料プランの場合は一定期間アクセスがないと自動でスリープ状態に入ってしまいます。

そこで、今回はPythonとSeleniumを使って定期的に自動アクセスを行い、アプリを常にアクティブな状態に保つすることにしました。

方法

以下のPythonコードは、SeleniumとChromeDriverを利用して指定したURLにアクセスする仕組みです。 これをcron等で定期的に実行すればOKです。

ライブラリのインストール

Terminal window
$ pip install selenium chromedriver-binary-auto

コード例

from time import sleep
import chromedriver_binary
from selenium import webdriver
def web_open(url):
try:
options = webdriver.ChromeOptions()
options.add_argument("--headless")
driver = webdriver.Chrome(options=options)
driver.implicitly_wait(120)
driver.get(url)
sleep(30)
driver.quit()
print(f"Success! : {url}")
except Exception as e:
print(f"Error cccuered! : {e}")
def main():
urls = ["https://your-sub-domain.streamlit.app/"]
for url in urls:
web_open(url)
if __name__ == "__main__":
main()