質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
Streamlit

Streamlitは、Pythonでフロントエンドアプリケーションを構築できるフレームワーク。HTML/CSSの知識が不要で、描画ライブラリで作成したグラフを埋め込むことが可能です。機械学習のレポート作成やデータ分析にも応用できます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

受付中

Streamlitで 「AttributeError: 'NoneType' object has no attribute 'text'」が出たときの対応

kidakida
kidakida

総合スコア0

Streamlit

Streamlitは、Pythonでフロントエンドアプリケーションを構築できるフレームワーク。HTML/CSSの知識が不要で、描画ライブラリで作成したグラフを埋め込むことが可能です。機械学習のレポート作成やデータ分析にも応用できます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

1回答

0評価

0クリップ

187閲覧

投稿2022/07/03 23:56

開発環境
Python 3.9.7
streamlit 1.10.0

現在Line Notifyを用いたアプリを開発しており、トークンを入力するとLineに天気情報を通知する機能を開発中です。

現在次のようなエラーが出ており、解決策が知りたいです。

AttributeError: 'NoneType' object has no attribute 'text'
Traceback:
File "/Users/username/opt/anaconda3/lib/python3.9/site-packages/streamlit/scriptrunner/script_runner.py", line 554, in _run_script
exec(code, module.dict)
File "Web.py", line 28, in <module>
ws = [i.strip() for i in wc.text.splitlines()]

Python

import streamlit as st import requests from bs4 import BeautifulSoup import pandas as pd st.title('LINEに天気を通知するアプリ') line_notify_token = st.text_input('トークンを入力') line_notify_api = 'https://notify-api.line.me/api/notify' link = '[トークンの取得方法](https://codelabsjp.net/python-line-notify/)' st.markdown(link, unsafe_allow_html=True) st.write('トークンの取得方法については上のリンクをご参照ください') df = pd.read_csv('/Users/username/Desktop/code.csv',encoding = 'utf-8',names=('name', 'code'),index_col='name',parse_dates=True) position = df.index select_position = st.selectbox('地域を選択してください',position) no = df.index.get_loc(select_position) AreaCode = df['code'][no] if st.button("実行"): r = requests.get('https://weather.yahoo.co.jp/weather/jp/11/'+ str(AreaCode) + '.html') soup = BeautifulSoup(r.content, "html.parser") wc = soup.find(class_="forecastCity") ws = [i.strip() for i in wc.text.splitlines()] wl = [i for i in ws if i != ""] message = ("\n" + wl[0] + "\n" + wl[1] + "\n" + "最高気温:" + wl[2] + "\n"+ "最低気温:" + wl[3] + "\n" + "\n" + wl[18] + "\n" + wl[19] + "\n" + "最高気温:" + wl[20] + "\n" + "最低気温:" + wl[21] ) payload = {'message': message} headers = {'Authorization': 'Bearer ' + line_notify_token} line_notify = requests.post(line_notify_api, data=payload, headers=headers)

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Streamlit

Streamlitは、Pythonでフロントエンドアプリケーションを構築できるフレームワーク。HTML/CSSの知識が不要で、描画ライブラリで作成したグラフを埋め込むことが可能です。機械学習のレポート作成やデータ分析にも応用できます。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。