[解決済み] リストインデックスが範囲外」という例外処理をしたい。
2022-06-22 06:22:30
質問
私は ビューティフルスープ を使っていて、いくつかのHTMLをパースしています。
各HTMLからあるデータを取得しています。 (forループを使って) を取得し、そのデータを特定のリストに追加しています。
問題は、いくつかのHTMLが異なる形式を持ち (であり、私が欲しいデータが入っていないことです。) .
そこで、例外処理を利用して、値を追加しようとしていた
null
をリストに追加しようとしました。
(を追加することにしました(データの並びが重要なので、こうしておくとよいでしょう)。
例えば、こんなコードです。
soup = BeautifulSoup(links)
dlist = soup.findAll('dd', 'title')
# I'm trying to find content between <dd class='title'> and </dd>
gotdata = dlist[1]
# and what i want is the 2nd content of those
newlist.append(gotdata)
# and I add that to a newlist
を持たないリンクもあります。
<dd class='title'>
を持たないリンクもあります。
null
をリストに追加することです。
エラーが表示されます。
list index out of range.
私が試したのは、このような行をいくつか追加することです。
if not dlist[1]:
newlist.append('null')
continue
しかし、それはうまくいきません。まだエラーが表示されます。
list index out of range.
これはどうすればいいのでしょうか?例外処理を使うべきでしょうか? それとももっと簡単な方法があるのでしょうか?
何か提案はありますか?どんな助けでも、本当に素晴らしいでしょう
どのように解決するのですか?
例外を処理するのがよいでしょう。
try:
gotdata = dlist[1]
except IndexError:
gotdata = 'null'
もちろん
len()
の
dlist
のような例外が発生しますが、例外の処理はより直感的です。
関連
-
[解決済み] UnicodeEncodeError: 'ascii' codec can't encode character u'\xa0' in position 20: ordinal not in range(128)
-
[解決済み] リストのリストからフラットなリストを作るには?
-
[解決済み] リスト内のアイテムのインデックスを検索する
-
[解決済み] リストを均等な大きさの塊に分割するには?
-
[解決済み] Python 3で「1000000000000000 in range(1000000000000001)」はなぜ速いのですか?
-
[解決済み] インデックスを指定してリストから要素を削除する方法
-
[解決済み] なぜList<T>を継承しないのですか?
-
[解決済み] pandasを使った "大量データ "ワークフロー【終了しました
-
[解決済み] Node.jsの例外処理のベストプラクティス
-
[解決済み】IEnumerable vs List - What to Use? どのように動作するのでしょうか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
opencvとpillowを用いた顔認証システム(デモあり)
-
python implement mysql add delete check change サンプルコード
-
Python 可視化 big_screen ライブラリ サンプル 詳細
-
Evidentlyを用いたPythonデータマイニングによる機械学習モデルダッシュボードの作成
-
風力制御におけるKS原理を深く理解するためのpythonアルゴリズム
-
[解決済み】Pythonスクリプトで「Expected 2D array, got 1D array instead: 」というエラーが発生?
-
[解決済み】ImportError: PILという名前のモジュールがない
-
[解決済み】TypeError: 系列を <class 'float'> に変換することができません。
-
[解決済み】ValueError: pickleプロトコルがサポートされていません。3、python2 pickleはpython3 pickleでダンプしたファイルを読み込むことができない?
-
[解決済み】NameError: 名前 'self' が定義されていません。