本当にPython初心者でも作れるモノ4選【Webアプリ・データ取得・自動化etc.】

本当にPython初心者でも作れるモノ4選【Webアプリ・データ取得・自動化etc.】の紹介画像

GeekSalonライターのたかぱんです!

この記事をお読みの方は

「Python始めたばかり初心者におすすめなプロダクトが知りたい」

「Pythonでなにか作ってみたいけれど何が作れるかわからない」

といったような悩みをお持ちではありませんか? 

この記事では、Pythonでどのような物が作れるか、その中でも初心者におすすめなプロダクトとそのサンプルコードについて解説していきます。

大学生限定プログラミングコミュニティGeekSalon

GeekSalon
  • ゼロから3ヶ月でオリジナルアプリを開発!
  • 継続率約80%!同世代の仲間と学ぶから挫折しない!
  • 大学生向けの安価な料金!
詳しく見る

Pythonについて知ろう

Python作られている有名なサービスの紹介

Pythonは近年非常に人気が高くなってきているプログラミング言語です。

日経の調査によると、今後どのような言語を学びたいかという項目で回答者の2/3はPythonを学習したいという結果が出ています。

プログラミング言語ランキング画像

https://xtech.nikkei.com/atcl/nxt/mag/nc/18/072100242/072100001/

さらには、「Dropbox」「Instagram」「YouTube」といった身近なサービスも、Pythonが使用されています。

このように、Pythonの人気が高く汎用性が高いのは、Python言語は文法が簡単で、かつサードパーティのライブラリが多いということが理由にあげられます。

(サードパーティのライブラリ・・・コードを1から書かなくてもインストールするだけで実行のできるコードのこと)

Pythonを学ぶ理由について

Pythonは非常に汎用性が高く人気であるということを先ほど説明しました。

この特徴はPythonを学ぶ理由の1つですが、これに加えてPythonを学ぶことでこれからの社会の中心になっていく人工知能に触れることができます。

AI・人工知能と呼ばれているようなものは、今後確実に普及していくということはご存知でしょう。PythonはそのAI・人工知能のプログラムを作成するための言語の一つです。

さらには、Pythonは文法が簡単なため、様々なサービスが活用しており現在ではサービス同士を連携するメジャーな言語になっています。

そのため他のサービスを使ってなにかを作りたい人にはもってこいであり、転職を考えている人にとっては収入面でも期待のできる言語です。

長くなりましたが、Pythonを学びたいと感じてくれたでしょうか。

それでは、Pythonの入門のために、初心者でも作れるものを4つ紹介していきます。

Python初心者でも作れるモノ4選

Python初心者におすすめプロダクト紹介画像

自動ログインなどの自動化ツール

まずPython初心者におすすめなものの1つ目として、自動化ツールが挙げられます。

その時に使用するPythonのライブラリとして、代表的に4つのことがあります。

ネットから株価やなどの情報を取得するスクレイピング

初心者におすすめなPythonプロダクトの2つ目として、ネットから情報を所得するスクレイピングツールです。

スクレイピングとは?

Web上から必要なデータをプログラム等を使用して取得してくることです。Scrapingは「こすり、ひっかき」に由来しており、プログラミングで使うときは特にWeb上から必要なデータをとってくることを意味します。

スクレイピングは、データを手動で収集するのに比べて大きく時間と手間を短縮できます。

その分Webサイト上のデータを取得してくるためサーバーに負担がかかり、スクレイピングが禁止されていたり違法になるサイトもあるため、スクレイピングするサイトには気をつける必要があります。

ではGoogleの検索結果の上位10位とそのURLを所得するスクレイピングをしてみましょう!(参考

【サンプルコード】

まず最初に、Anaconda Promptを起動して以下のコードを入力して実行させ必要なライブラリのインストールをします。

Anacondaのインストール方法に関しては、こちらの記事で紹介していますので、ぜひ参考にしてください。

【Pythonの始め方】環境構築手順をインストールから丁寧に解説【Mac・Windows・その他】
関連記事【Pythonの始め方】環境構築手順をインストールから丁寧に解説【Mac・Windows・その他】

まずは、必要なライブラリのインストールを行います。

pip install requests

pip install beautifulsoup4

次に以下のコードをVSコードに書いて実行させます

import requests

from bs4 import BeautifulSoup

# Google検索するキーワードを設定

search_word = 'python'

# 上位から何件までのサイトを抽出するか指定する

pages_num = 10 + 1

print(f'【検索ワード】{search_word}')

# Googleから検索結果ページを取得する

url = f'https://www.google.co.jp/search?hl=ja&num={pages_num}&q={search_word}'

request = requests.get(url)

# Googleのページ解析を行う

soup = BeautifulSoup(request.text, "html.parser")

search_site_list = soup.select('div.kCrYT > a')

# ページ解析と結果の出力

for rank, site in zip(range(1, pages_num), search_site_list):

    try:

        site_title = site.select('h3.zBAuLc')[0].text

    except IndexError:

        site_title = site.select('img')[0]['alt']

    site_url = site['href'].replace('/url?q=', '')

    # 結果を出力する

    print(str(rank) + "位: " + site_title + ": " + site_url)

これを実行すると、次のように検索順位と検索結果とURLがリストアップされます。

<実行結果>

【検索ワード】python

1位: Python.org: https://www.python.org/&sa=U&ved=2ahUKEwjNyL-duKX2AhXlKqYKHf4jC18QFnoECAkQAg&usg=AOvVaw2XwD5f6vtFqcFWus3Ot93B

2位: python.jp: プログラミング言語 Python 総合情報サイト: https://www.python.jp/&sa=U&ved=2ahUKEwjNyL-duKX2AhXlKqYKHf4jC18QFnoECAIQAg&usg=AOvVaw38kSN8L__fPoADmUnTq7q2

3位: ゼロからのPython入門講座: https://www.python.jp/train/index.html&sa=U&ved=2ahUKEwjNyL-duKX2AhXlKqYKHf4jC18QFnoECAEQAg&usg=AOvVaw285j48Vv3Rzz6HBwlAwfbI

4位: Python – Wikipedia: https://ja.wikipedia.org/wiki/Python&sa=U&ved=2ahUKEwjNyL-duKX2AhXlKqYKHf4jC18QFnoECAgQAg&usg=AOvVaw1Kj53OtovXPaIS5B36ZBbz

5位: Pythonでできること6選!仕事への活用方法から学習方法まで解説:https://www.pasonatech.co.jp/workstyle/column/detail.html%3Fp%3D2104&sa=U&ved=2ahUKEwjNyL-duKX2AhXlKqYKHf4jC18QFnoECAMQAg&usg=AOvVaw0W6Ft0qlVod9ftp0hCNA25

6位: Python入門 – Let’sプログラミング: https://www.javadrive.jp/python/&sa=U&ved=2ahUKEwjNyL-duKX2AhXlKqYKHf4jC18QFnoECAcQAg&usg=AOvVaw2cIcjZ7XTrlD3L7_gZI4GX

7位: Python | プログラミングの入門なら基礎から学べるProgate[プロ …: https://prog-8.com/courses/python&sa=U&ved=2ahUKEwjNyL-duKX2AhXlKqYKHf4jC18QFnoECAAQAg&usg=AOvVaw0HgxVCHjmYcq0EM8mXQsEc

8位: MicroPython – Python for microcontrollers: https://micropython.org/&sa=U&ved=2ahUKEwjNyL-duKX2AhXlKqYKHf4jC18QFnoECAUQAg&usg=AOvVaw0edwUFqgTdGV5qq848cNXU

Webアプリ

初心者におすすめなPythonプロダクトの3つ目は、Webのアプリです。

Webアプリを作成する際のプログラミング言語には、Ruby、PHP、Javaが多く採用されますが、実はPythonを使ってWebアプリを作成することができます。

Pythonには、簡単にWebアプリが作れるようなフレームワークが作成できるライブラリがあります。(フレームワークとは、中身になにも入っていない骨組みのようなもので、プログラムを使って中身を埋めていいきます)

Wenアプリにおいてフレームワークを作成するライブラリとして、以下の2つが挙げられます。

Webアプリはインターネットやサーバーにも関係のあるものなので、Python以外にも必要となってくる知識があります。例えば、HTMLや通信、セキュリティなどに対する知識がWebアプリを作る上で必要になります。

しかし、自分の作ったプログラムをネット上にアップロードし、友達や知り合いにも活用してもらうことができるので、とてもおすすめです。

画像処理

初心者におすすめなPythonプロダクトの4つ目は、画像処理ツールです。Pythonのライブラリの1つであるOpenCVは画像認識や画像処理を得意としています。OpenCVは簡単に画像のピクセルを読み取り分析して処理したり、特徴を検出したりすることができるので、以下のような活用ができます

では実際に、顔の認識をするコードを書いてみましょう。

【サンプルコード】

こちらは、Google Colaboratoryで実行させます

(Google Colaboratoryはオンラインで動くエディターです。インストール方法や、使用方法は下記に載せているため、こちらを参考にしてみてください。

【Pythonの始め方】環境構築手順をインストールから丁寧に解説【Mac・Windows・その他】
関連記事【Pythonの始め方】環境構築手順をインストールから丁寧に解説【Mac・Windows・その他】
import cv2

from google.colab import files

#公式からダンロード

face_cascade_path = '/usr/local/opt/opencv/share/'\

                    'OpenCV/haarcascades/haarcascade_frontalface_default.xml'

eye_cascade_path = '/usr/local/opt/opencv/share/'\

                   'OpenCV/haarcascades/haarcascade_eye.xml'

face_cascade = cv2.CascadeClassifier(face_cascade_path)

eye_cascade = cv2.CascadeClassifier(eye_cascade_path)

uploaded_file=files.upload()

uploaded_file_name = next(iter(uploaded_file))

src =  cv2.imread(uploaded_file_name)

src_gray = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)

faces = face_cascade.detectMultiScale(src_gray)

for x, y, w, h in faces:

    cv2.rectangle(src, (x, y), (x + w, y + h), (255, 0, 0), 2)

    face = src[y: y + h, x: x + w]

    face_gray = src_gray[y: y + h, x: x + w]

    eyes = eye_cascade.detectMultiScale(face_gray)

    for (ex, ey, ew, eh) in eyes:

        cv2.rectangle(face, (ex, ey), (ex + ew, ey + eh), (0, 255, 0), 2)

cv2.imwrite('data/dst/opencv_face_detect_rectangle.jpg', src)

コードを実行することで、アップロードした画像の顔の部分を認識して、四角で囲ったものを出力してくれます。

<実行前>

女性の画像

<実行後>

女性の画像

以上の4つが初心者におすすめなプロダクトでした。

難易度も載せましたので、自分のチャンレンジしたいものを作ってみましょう!

Python初心者が開発を始める手順

Python初心者が開発を始めるときに、パソコンの中に色々なソフトをダンロードして、開発できる環境を整える必要があります。

ダウンロードする物として基本的には、以下の2つをダウンロードする必要があります。

Pythonそのもの自体のダンロードは、Anacondaというものをインストールする方法があります。

AnacondaをインストールすることでPythonの使いやすい環境もPythonとセットでダウンロードすることができるので、Anacondaでインストールをしましょう。

エディターは、コードを書くためのWordのようなアプリを想像していただけるとわかりやすいです。そのエディターとして、VSCodeの使用をおすすめしています。

VSCodeは、世界中のプログラマーに使われているエディターであり、誤字の修正や、見やすいにようにスペースの調整を自動でしてくれる機能をつけることができます。

加えてVSCodeはPythonに限らず様々な言語で使用することができるので、Python以外の言語も使ってみたい方にもおすすめです。

画像つきダウンロード方法はこちら

【Pythonの始め方】環境構築手順をインストールから丁寧に解説【Mac・Windows・その他】
関連記事【Pythonの始め方】環境構築手順をインストールから丁寧に解説【Mac・Windows・その他】

Pythonでの開発につまづいたらスクールもおすすめ

Pythonの環境構築や、開発の途中でつまってしまうのは、初心者あるあるだと思います。

パソコンに対する知識がなかったり、パソコンの設定が独自のもので教本と違ったりすることで、エラーが解決できず独学で挫折してしまう初心者は多くいます。

そんなときには、エラー文を検索してみたりすることがおすすめです。

それでもよく理解できない場合はスクールで学んでみてもいいかもしれません。

大学生専用プログラミングスクールGeekSalonでは、Pythonについて文法からスクレイピングや自動化などライブラリの使い方まで1ヶ月で¥49,830学ぶことのできるPythonコースがあります。 (※2023年7月現在)

プログラミングスクールGeekSalonの公式HPの画像

興味がある人は説明会や体験会を毎日実施しておりますので、こちらへ!

大学生限定プログラミングコミュニティGeekSalon

GeekSalon
  • ゼロから3ヶ月でオリジナルアプリを開発!
  • 継続率約80%!同世代の仲間と学ぶから挫折しない!
  • 大学生向けの安価な料金!
詳しく見る

無料説明会を開催しています

GeekSalonの詳細やプログラミング学習、卒業生の進路などを少人数でお話しします。
その他のご質問やご相談もお気軽にお聞きください。

ゼロから3ヶ月でオリジナルアプリを開発!大学生限定プログラミングスクール