PythonでWebから自動でデータ抜き出す凄技の肝 URLの一覧を渡されたら一体どうしたらいいか

著者フォロー
ブックマーク

記事をマイページに保存
できます。
無料会員登録はこちら
はこちら

印刷ページの表示はログインが必要です。

無料会員登録はこちら

はこちら

縮小

取得したテキストから数値だけを取り出す

22~26行目は取得したデータをDataFrameオブジェクト(表形式のデータ)に差し込んでいく処理です。ただし、取り出されるテキストは「価格:2,178円(税込)」のような形になっています。必要なのは数値だけなので、re.sub関数を使って数字以外を消し、「2178」だけを残します。

re.subは正規表現(さまざまな文字列を1つの文字列で表現すること)で置換する関数です。第1引数の「r"\D"」は数字以外の文字を表し、第2引数の「""」は空文字を表します。数字以外を空文字に置き換えるので、数字だけが残るというわけです。

行と列を指定してデータを入れる

22行目から26行目では、findメソッドで取得したデータを、DataFrameオブジェクトに入れるためにiloc属性を使っています。iloc属性は行と列のインデックス番号を指定して、特定のセルを取得/設定します。

今回の場合、行のインデックス番号は変数indexに入っているものを使い、columns.get_locメソッドで列名から列のインデックス番号を調べています。

最後にto_excelメソッドでExcel ファイルに上書き保存して完了です。

次ページ「time.sleep(1)」の意味は?
関連記事
トピックボードAD
キャリア・教育の人気記事