[過去ログ]
くだすれPython(超初心者用) その48【まず1嫁】 (1002レス)
くだすれPython(超初心者用) その48【まず1嫁】 http://mevius.5ch.net/test/read.cgi/tech/1589201940/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
177: デフォルトの名無しさん [sage] 2020/06/07(日) 21:45:53.58 ID:6qpSxt73 ていうか一発でdictに一式追加して返そうとするから話がややこしい(普通そんなことしないから)んであって 空のdict作って if product.find(class_="item-name") is not None: p["title"] = product.find(class_="item-name").text とかで順次追加していけば簡単にできる というか普通はそうする それかセレクタがすべてクラスなら内包表記使って一発で書ける product.find(class_="selector") の返り値が Noneでないときだけを含む内包表記でOK http://mevius.5ch.net/test/read.cgi/tech/1589201940/177
179: デフォルトの名無しさん [sage] 2020/06/07(日) 23:23:32.18 ID:dFrIri+F >>177 普通はメソッド抽出からやると思うな スクレイピングとかでなくちゃんとした仕事のコードなら クラスやNamedTuple切って初期化コードを書くかも def extract_text(html, selector): return element.text if (element := html.select_one(selector)) else "" メソッドにすればexpressionだけでなくstatementも自由にかける http://mevius.5ch.net/test/read.cgi/tech/1589201940/179
181: デフォルトの名無しさん [] 2020/06/08(月) 12:33:57.05 ID:YfXxGcAQ >>177 普通はしないことなんですね。ありがとうございます。 全てクラスで取得しているので内包表記で書いてみます。 >>178 再度3.8を確認して試してみたら動きました。 普段Jupyterの3.7を使っていますが3,8が良いのでしょうか? 新しいバージョンだとモジュールが読み込まないことがあるので古い方を使っています。 >>180 ありがとうございます。後から理解がついてくるからわからなくても、とりあえず手を動かしてコードを書けという意見、 ゆっくり1つ1つ理解して書くのが良いという意見どちらもありますね。 難しいこともありどこまで基本なのかかわからないですが理解できるように頑張ります。 http://mevius.5ch.net/test/read.cgi/tech/1589201940/181
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.028s