[解決済み] タグ内のテキストを表示する BeautifulSoup
2022-02-15 16:54:55
質問
例えばタグの中のテキストだけを表示させたいのですが、どうすればいいですか?
<span class="listing-row__price ">$71,996</span>
のみを表示させたい。
71,996ドルです。
私のコードは
import requests
from bs4 import BeautifulSoup
from csv import writer
response = requests.get('https://www.cars.com/for-sale/searchresults.action/?mdId=21811&mkId=20024&page=1&perPage=100&rd=99999&searchSource=PAGINATION&showMore=false&sort=relevance&stkTypId=28880&zc=11209')
soup = BeautifulSoup(response.text, 'html.parser')
cars = soup.find_all('span', attrs={'class': 'listing-row__price'})
print(cars)
タグからテキストを抽出するにはどうすればよいですか?
どのように解決するのですか?
タグ内のテキストを取得するためには、いくつかのアプローチがあります。
a)
を使用します。
.text
属性で指定します。
cars = soup.find_all('span', attrs={'class': 'listing-row__price'})
for tag in cars:
print(tag.text.strip())
出力
$71,996
$75,831
$71,412
$75,476
....
b) 使用方法 get_text()
for tag in cars:
print(tag.get_text().strip())
c) もし タグの中にある文字列のみ 以下のオプションも使用できます。
-
.string
-
.contents[0]
-
next(tag.children)
-
next(tag.strings)
-
next(tag.stripped_strings)
ie.
for tag in cars:
print(tag.string.strip()) #or uncomment any of the below lines
#print(tag.contents[0].strip())
#print(next(tag.children).strip())
#print(next(tag.strings).strip())
#print(next(tag.stripped_strings))
出力します。
$71,996
$75,831
$71,412
$75,476
$77,001
...
注
.text
と
.string
は同じではありません。タグの中に他の要素がある場合。
.string
が返されます。
None
.textはタグの中のテキストを返します。
from bs4 import BeautifulSoup
html="""
<p>hello <b>there</b></p>
"""
soup = BeautifulSoup(html, 'html.parser')
p = soup.find('p')
print(p.string)
print(p.text)
出力内容
None
hello there
関連
-
任意波形を生成してtxtで保存するためのPython実装
-
[解決済み】Python elifの構文が無効です【終了しました
-
[解決済み】ValueError: xとyは同じサイズでなければならない
-
[解決済み] for'ループでインデックスにアクセスする?
-
[解決済み] リスト内のアイテムのインデックスを検索する
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonのリストメソッドであるappendとextendの違いは何ですか?
-
[解決済み] 最小限の驚き」と「変更可能なデフォルトの引数
-
[解決済み] print関数の出力をフラッシュする(pythonの出力をバッファリング解除する)にはどうすればよいですか?
-
[解決済み】__str__と__repr__の違いは何ですか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
PicgoのイメージベッドツールをPythonで実装する
-
python implement mysql add delete check change サンプルコード
-
Pythonショートビデオクローラーチュートリアル
-
[解決済み】「RuntimeError: dictionary changed size during iteration」エラーを回避する方法とは?
-
[解決済み] builtins.TypeError: strでなければならない、bytesではない
-
[解決済み] 'DataFrame' オブジェクトに 'sort' 属性がない
-
[解決済み】SyntaxError: デフォルト以外の引数がデフォルトの引数に続く
-
[解決済み】Flask ImportError: Flask という名前のモジュールがない
-
[解決済み】Python - "ValueError: not enough values to unpack (expected 2, got 1)" の修正方法 [閉店].
-
[解決済み】 'numpy.float64' オブジェクトは反復可能ではない