Pythonによるビジネスに役立つWebスクレイピング(BeautifulSoup、Selenium、Requests)
4.5 (27 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
265 students enrolled

Pythonによるビジネスに役立つWebスクレイピング(BeautifulSoup、Selenium、Requests)

Python3のスクレイピング用ライブラリBeautifulSoup、Seleniumなどを用いて、世界中のWebサイトからデータを取得します。効率的にデータを収集・活用することで、業務の効率化・生産性向上に貢献する技術を身に付けましょう!
4.5 (27 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
265 students enrolled
Created by 清水 義孝
Last updated 7/2020
Japanese
Current price: $83.99 Original price: $119.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 8 hours on-demand video
  • 17 articles
  • 10 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Assignments
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Python3のスクレイピング用ライブラリBeautifulSoup、Selenium、Requests、Newspaper3k、Pandas(read_html)が扱えるようになります。
  • Beautiful Soupを用いて、複数のWebページを巡回し、目的の情報を取得する方法を理解することができます。
  • Seleniumを利用した、ログイン画面への対処、JavaScriptを用いた動的なサイトへの対処、画像を取得・ダウンロードする方法を理解することができます。
  • newspaper3kを用いて、ニュースサイトやブログのトップページに表示されている複数の記事を順に巡回し、記事や要約、キーワードをダウンロード・保存する方法を理解することができます。
  • Pandasのread_htmlを用いて、Webサイト上のテーブルに格納されているデータを取得する方法を理解することができます。
  • スクレイピングにおけるXPath、CSSセレクタ、正規表現の利用方法を学ぶことができます。
  • スクレイピングでデータを取得・抽出し、取得したデータを整形・グラフ化、保存する一連の流れを習得することができます。
Course content
Expand all 126 lectures 08:15:14
+ Jupyter Notebookのインストールと使い方
8 lectures 22:00
Jupyter Notebookのインストール
01:14
エディットモード・コマンドモード、ショトカットキー
04:42
マークダウン
02:34
コードの実行
02:06
データ保存
01:29
ファイル共有、終了方法
03:55
ライブラリのインストール
00:55
+ HTMLの基本
4 lectures 15:39
HTMLの構成、タグの種類
08:02
HTMLタグの属性
02:55
CSSとは
01:57
HTMLの階層構造
02:45
+ newspaper3kによるニュース記事の取得
7 lectures 32:21
単一のニュース記事の取得
06:00
自然言語処理による要約の取得
03:14
CSVファイルへの保存1(ヘッダデータ)
08:37
CSVファイルへの保存2(明細データ)
05:10
このセクションの復習として、newspaper3kの基本的な使い方を復習する課題になります。宜しければ、取り組んでみてください。
newspaper3kの基本演習
4 questions



ソースコード
00:09
+ Pandasでスクレイピング(株価の取得)
8 lectures 32:18
Pandas・read_htmlの基本
03:47
取得データの変換1(数値)
07:11
取得データの変換2(日付)
05:44
株価グラフの描画
04:51
株価データの保存
02:30
ソースコード
00:09
+ Requestsの基本的な使い方
5 lectures 17:20
Requestsの使い方(responseオブジェクト)
05:05
Requestsの使い方(getメソッドの引数)
07:00
ソースコード
00:09
+ BeautifulSoupの基本
6 lectures 19:24
BeautifulSoupでHTMLの階層を移動してタグを指定する方法
05:16
BeautifulSoupのfind、find_allメソッドの使い方
03:28
BeautifulSoupのselectメソッドの使い方
03:37
このセクションの復習として、BeautifuSoupの基本的な使い方を復習する課題になります。宜しければ、取り組んでみてください。
BeautifulSoupの基本演習
5 questions
ソースコード
00:09
+ BeautifulSoupで読売新聞オンラインからニュースのタイトル・URLを取得
6 lectures 28:20
読売新聞オンラインからHTMLデータの取得
06:47
selectメソッドによるニュースタイトル・URLの取得
07:31
複数のニュースタイトル・URLの取得
06:58
ソースコード
00:09
+ 【演習】BeautifulSoupでYahooニュースから主要ニュースの記事を取得
9 lectures 29:29
【解説】主要ニュースのタイトル・URL一覧の取得
08:54
【課題】要約ページからニュースページへのリンクの取得
00:34
【ヒント】リンクをたどって複数のページを遷移する方法
01:52
【解説】要約ページからニュースページへのリンクの取得
07:39
【課題】各主要ニュースの記事の取得
00:36
【解説】各主要ニュースの記事の取得
05:51
ソースコード
00:09
+ 正規表現
12 lectures 52:28
正規表現で使う関数(match・search)
04:35
正規表現で使う関数(findall・finditer・fullmatch・sub)
05:34
文字列の先頭・末尾を指定する記号
02:16
繰り返し回数を指定する記号
07:17
集合(否定を含む)・ORを指定する記号
05:11
特殊シーケンス
05:59
コンパイル・特殊文字のエスケープ
03:21
貪欲マッチ・非貪欲マッチ
03:31
フラグ引数
09:09
ソースコード
00:09
Requirements
  • Pythonの基本的な文法を理解されている方を対象としています。もし受講の途中で知識の不足を感じるようでしたら、参考のリンクを掲載しておりますので、補足ください。
  • 講師はWindowsの環境で解説しておりますが、Macでも同様に進めていくことができます。
  • スクレイピングが全くの未経験でも問題ありません。HTML、CSSの基本についても解説しております。
  • 講師はAnacondaでのPython3環境を構築し、Jupyter Notebookを元に解説を進めておりますが、別のPython3環境でも進めていくことができます。
  • AnacondaでのPython3の環境構築、Jupyter Notebookの使い方についての講義も提供しております。
Description

現役のデータサイエンティストが提供するWebスクレイピングに関する講座で、データサイエンスの実務における経験を基に、デザインされた講座になります。


近年、ビジネスでのデータ活用においては、世界中のWebサイトから様々なデータを取得することが求めらています。 また変化も激しい環境において、それぞれのWebサイトの構造や内容も頻繁に更新され、日々変わっていきます。


スクレイピングが難しい理由として、次のようなポイントが挙げられます。

  1. Webサイトにより構造が異なる

  2. Webサイトの構造が複雑・頻繁に変わる

  3. JavaScriptでユーザーの操作によって新たなページが読み込まれるなど、特殊な技術が使われている

しかし、ビジネスでスクレイピングを用いるには、これらのポイントに適切に対処していくことが求められます。


これら難しいポイントに適切に対処し、ビジネスでスクレイピングを活用できるよう、このコースはデザインされています。

このコースの特徴は次のようなものになります。

  1. 様々なニーズや場面に応じて使い分けできるよう、Pythonのスクレイピングライブラリの中でも幅広いライブラリをカバーします。

    •    Beautiful Soup、Selenium、Requests、newspaper3k、Pandasのread_html

  2. ビジネスで活用するにおいて必要となる、スクレイピングにおける一連のプロセスをカバーします。

    •    データ取得・抽出から、整形、グラフ化、保存まで

  3. 特殊な技術が使われているWebサイトも考慮し、幅広いスキルを身につけれるよう、レクチャーを提供します。

    •    JavaScriptを用いた動的なサイトへの対処方法

    •    ログイン画面への対処方法

    •    リンクをたどり、複数のWebページを巡回する方法

    •    テキスト情報・画像ファイルの取得方法

                                                                           など多数

これらを通じてこのコースの受講後は、世界中のWebサイトから効率的に情報を取得することができるようになります。


このWebスクレイピングの講座では、次のトピックをカバー致します。

  1. AnacondaでのPython3の環境構築、Jupyter Notebookの使い方

  2. HTMLとCSSの基本

  3. newspaper3kによるニュース記事・要約の取得と保存

  4. Pandasでスクレイピングによる株価の取得とグラフ化・保存

  5. RequestsとBeautiful Soupの基本的な使い方

  6. Beautiful Soupでリンクをたどり、複数のWebページを巡回する方法

  7. Beautiful Soupでの必要な情報の抽出方法

       a) HTMLの階層を移動して、HTMLタグの該当する箇所を検索する方法

       b) find、find_allメソッドにより、HTMLタグの該当する箇所を検索する方法

       c) selectメソッドにより、CSSセレクタで該当する箇所を指定する方法

  8. XPathやCSSセレクタの記述方法

  9. 正規表現の使い方

  10. Seleniumの基本的な使い方

  11. SeleniumによるJavaScriptを用いた動的なサイトへの対処方法

  12. Seleniumによるログイン画面への対処方法

  13. Selenium、Requestsによる画像ファイルのダウンロード・保存方法

  14. 実践プロジェクト


なお、Classなどオブジェクト指向の記述は、初心者向きでは無いので本コースの対象外としております。本コースでは、これらの記述を使わずに解説しておりますので、ご注意ください。


Who this course is for:
  • Webスクレイピングをビジネスに活用されたい方
  • Webスクレイピングを趣味に活用されたい方
  • Webスクレイピングに興味があるが、始め方がわからない方
  • Webサイトから効率的にデータを取得する方法を学習されたい方