○クマ
をターゲットサイトに設定し、キーワード『ゴジラ 美品』
の検索結果を整理してみるrequests
とBeautifulsoup
をつかう× .select("
a", class_=
"link_search_image") #エラー
○ .select('
a[class_=
"link_search_image"]'
) #こちらの記述形式でエラーが解消
class_=
ってめちゃくちゃ便利ですよね。 私は多用しまくっています。
このエラーが起きたとき、何が起きたか全く意味不明で、あぁ終わった
と思いました。
内容をか〜く
※いってもズブの素人が書いたラクガキ
みたいなコードですので、みづらかったり間抜けなことをしている可能性が多々
ありますが、みなさんあたたかい目で見守ってくださいね。
スクレイピングで使う各機能をインポートしよう
インストールとインポートって何が違うの?
インストールは、スーパーなどから食材を買って冷蔵庫(自分のPC)に入れるイメージ
インポートは、冷蔵庫(自分のPC)から食材をひっぱり出して料理(プログラミング)の準備をする感じかな…
これであってます?
リストは1項目(URL)をずらーっと入れていく
dfは1項目(1商品)につき4つの情報を格納できるようにする
今回の検索キーワードは"ゴジラ+美品"
○クマの検索一覧URLを調べて、キーワードの前のアドレスとくっつける
※確認用としてprint()
で表示するようにしてます
requestsを使って、まずはsessionをスタートさせよう
.get()
にurlを入れて、検索一覧ページのhtmlを取得
time.sleep()
で少し一息入れて、※今回は4秒待ってます
BeautifulSoup
で煮込んで、トロットロのおいしいスープができたよ!
いま作ったスープの中には検索一覧ページの要素が全部まざってるので、
そこから欲しい情報だけをすくいあげよう!
soup.select()
に欲しい要素の属性を入れておおまかに探してから、re.match
で情報を整理!
最後にurl_list
に個別URLを格納していこう!
※属性の調べ方はググろう!たっくさん情報が出てくるよ!
WebスクレイピングのためのChromeのツールの使い方
Beautiful Soup のfind_all( ) と select( ) の使い方の違い
考え方はさっきと同じ!
url_list
の中の個別URLたちをitem
として、for文
でまわしてスープにしよう
python for文を初心者向けに解説!for文基礎はこれで完璧
最終的なゴールのitems_df
の行設定のため、for文の前に適当にi
を作っておこう
soup_02
)にして、、、※個数とURLをわかりやすくするため、print()
してます。
name
)kakaku
)setsu
)items_df
)にまとめて中身を確認しようご覧いただきありがとうございました。
こんな感じで、色々試してみたことを稚拙な文章でつらつらと書いていこうとおもいます。
気づいた点やアドバイスなどございましたら、コメントいただけると嬉しいです。