見出し画像

python 求人サイトのスクレイピング

ステップ・バイ・ステップで求人サイトのスクレイピング手順を示していきます。

0章 概要

0-1   目的

求人サイト(indeed)から指定した該当の求人情報を取得し、CSV形式で保存

本教材の完成イメージは以下になります。

e結果

0-2   扱うライブラリ

・requests
・BeautifulSoup
・pandas

0-3  全体を通じた注意点

・note上に貼り付けられたコードをコピペされる際は、インデントがズレてしまう時がありますので、その都度、修正をお願いいたします。

0-4   環境構築

・Windows10

(既に下記の開発環境がある前提で進めていきます。)
・Python3系
・Anaconda

仮想環境の構築

環境が汚れないように仮想環境を作成しましょう。
anacondaプロンプトを立ち上げて下記のように入力します。
(今回は仮想環境名をnoteenvとし、pythonのバージョンは3.8系を指定)

仮想環境構築

次に、作成した仮想環境に入ります。
下記のコマンドを入力し、エンターを押します。
(base)が(noteenv)に変わったことを確認しましょう。

仮想環境に入る

この状態で、各種ライブラリをインストールします。

それではjupyter labをインストールしましょう。
少し時間がかかります。

conda install -c conda-forge jupyterlab

次にbeautifulsoup4をインストールしましょう。

conda install beautifulsoup4

次にpandasをインストールしましょう。

conda install pandas

以上で環境構築は終了です。
お疲れ様でした。

1章  必要項目の抽出

1-1 ベースとなるURLの特定

今回は下記の条件で求人情報を取得することにします。
検索キーワード 「python 開発」
勤務地 「千葉県」

まずは下記のように手動で求人検索ボタンを押してみましょう。

検索画面

検索結果が表示されたら、下部のページ選択から2ページ目を選択しましょう。
検索の2ページ目が開いたら上部のアドレスを確認してみましょう。
下記のようになっているはずです。

2page目アドレス

次に3ページ目を選択して、同じように上部アドレスをみてみましょう。
下記のようになっているはずです。

画像4

ここで、2ページ目と3ページ目の違いを確認しましょう。

最後の「start=~」の数字のみが変わっていることに気づきます。
また、1ページごとに10ずつ数字が増えていることも確認します。

試しに、「start=0」として検索し、検索結果を確認してみましょう。

1ページ目

1ページ目が表示できたことを確認できました。

それでは、まず、この1ページ目のurlをベースに、必要項目を抽出し、後で上記のページ変化パターンを利用して複数ページの情報抽出できるようにしていきましょう。

ここから先は

6,721字 / 18画像

¥ 1,000

この記事が気に入ったらサポートをしてみませんか?