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

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

新規登録して質問してみよう
ただいま回答率
85.46%
スクレイピング

スクレイピングとは、公開されているWebサイトからページ内の情報を抽出する技術です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

1021閲覧

webスクレイピングで商品タイトルの抽出中に躓いてます。。

fear

総合スコア3

スクレイピング

スクレイピングとは、公開されているWebサイトからページ内の情報を抽出する技術です。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2021/10/08 04:43

前提・実現したいこと

Webスクレイピングをしたくて、商品名(タイトル)を抽出しようとしていますが、エラーが発生しています。エラー無しで商品情報を抽出したいです。

発生している問題・エラーメッセージ

ResultSet object has no attribute 'text'. You're probably treating a list of elements like a single element. Did you call find_all() when you meant to call find()?

該当のソースコード

python3

1products=soup.find_all('div', attrs={'class' : 'content title'}) 2product=products[0] 3title=product.find_all('a') 4title.text

試したこと

titleの部分を抜き出すために、
text['title']で抽出しようと思いましたが、できませんでした。

補足情報(FW/ツールのバージョンなど)

titleで動かした結果↓

[<a data-link="item" data-track-action="title" data-track-trigger="title" href="https://grp07.ias.rakuten.co.jp/redirect_rpp/?s=80mzhtMg7vA&amp;l=m3sfg9fLxQ4&amp;v=2Gl9Jnz2a0wSTaT-rUd8sii6P0lF7AP6uhf15iG_ROU&amp;d=2021-10-07&amp;q=balenciaga%E3%82%AD%E3%83%A3%E3%83%83%E3%83%97&amp;j=A1gm5N5yy1s&amp;r=CZBRhWvmdMWt5WYwyxud-Qyz0COFGP_Y-wHK-Y7iPWtvsQIJY4CC_5ThcW4Xe9ip4R0XWg7QtcE&amp;ii=KEVJgpU5LSW6F_XmIb9E5Q&amp;si=yTdvsOx8cyM&amp;ci=v6waOUMs8h4&amp;as=dFFQAC3K2XA&amp;cp=obS5zdT_iTk&amp;lg=8FNkeRbIa2JEs1Lpu89JaRkw5UxgElLBgNzmp4TgebSDQ1iRzrgI8g&amp;ap=&amp;e=IE0wiWDnCZE" target="_top" title="バレンシアガ キャップ 帽子 クラシック ベースボールキャップ コットン100% ブラック【BALENCIAGA レディース ブランド おしゃれ かわいい 正規品 新品 ギフト プレゼント 男性 女性 彼氏 彼女】XFCB701055 [S] 父の日">[PR] <!-- -->バレンシアガ キャップ 帽子 クラシック ベースボールキャップ コットン100% ブラック【BALENCIAGA レディース ブランド おしゃれ かわいい 正規品 新品 ギフト プレゼント 男性 女性 彼氏 彼女】XFCB701055 [S] 父の日</a>]
ここにより詳細な情報を記載してください。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

otn

2021/10/08 10:28

同様のエラーを起こす人が多いようで、 エラーメッセージの中に、原因の推測と対応方法まで書いてあるのですが、読んでないのでしょうか? エラーメッセージに限らず、メッセージというのは読むものです。
guest

回答1

0

ベストアンサー

python

1title=product.find_all('a') 2for t in title: 3 print(t.text)

とすれば、表示されます。

投稿2021/10/08 05:14

ppaul

総合スコア24666

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

fear

2021/10/08 05:20

ありがとうございました!!無事解決し、感動してます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問