【プログラミング初心者向け】Pythonでできること
「Python」を用いれば、
- Excelの操作
- ネット上のデータを自動で取得
- ツイッターのデータ取得
- AI(機械学習)を利用することができます
のようなことが簡単に実現できます。
Stack Overflowの調査によると「Python」は高所得国での注目度はjavascriptやJAVAよりも高いく、
また2020年以降も使用数は他の言語よりも使用されるという見込みです。
引用:Stack Overflow The Incredible Growth of Python
2019年のGitHubにて「Python」のは第2位の人気を集めました。
引用:GIT
さらに日本のIT国家資格である基本情報処理技術者試験でも2020年春季の試験より採用されます。
1.見直しの内容
(1)午後試験で出題するプログラム言語の見直し
・「COBOL」について、教育機関等における指導言語としての利用の減少、本試験における受験者の
選択率の極端な低下により、2019 年の秋期試験をもって出題を廃止
・「Python」について、適用範囲の拡大と利用の増加、機械学習やディープラーニングに関わる主要
な OSS(*4)での採用の広がり等により、2020 年の春期試験から出題に追加
Contents
「Python」ではウェブスクレイピングにより、ネット上のデータを自動取得できる
「Python」を利用すれば、ウェブスクレイピングというウェブサイトから簡単に取得する機能が使えます。
そのため、自分のサイトから情報を取得したり、Googleの検索順位を調査するツールを作成することができます。
ウェブスクレイピングとは、ウェブサイトから情報を抽出するコンピュータソフトウェア技術のこと。
しかしウェブスクレイピングを使用する際には、法的な注意事項もありますので、使用する場合は注意が必要です。
例えば、ツイッターではサービス利用規約により、使用を禁止していたりします。
事前にスクレイピングする場合は、利用規約を確認しましょう。
※クローリングもスクレイピングも同じような意味です。
■ツイッター
Twitterから提供されている当社の現在利用可能な公開インターフェースを経由する (かつ、該当する使用条件に従う) ことなく、その他の何らかの手段 (自動その他を問わず) で本サービスへのアクセスもしくはその検索を行うか、またはアクセスもしくは検索を試みること。ただし、Twitterと別途締結した契約によりこれを行うことが特に認められている場合はこの限りではありません (注: 本サービスのクローリングは、robots.txtファイルの定めによる場合には許されます。ただし、Twitterの事前の承諾なしに本サービスのスクレイピングを行うことは明示的に禁じられています)。
「Python」にて、APIという技術を利用すれば、ツイッターのデータを取得→分析が可能
「Python」では多数のAPIが利用できるため、ツイッター等の様々なサービスから簡単にデータを取得することができます。
因みにAPI(Application Programming Interface)のことで、広義ではソフトウェアコンポーネント同士が互いに情報をやりとりするのに使用するインタフェースの仕様である。
引用:wiki スクレイピング
例えばツイッターを例に挙げると、以下のようなツイッターアプリやウェブでやっていることが、
すべて自動で実行することが可能となります。
- タイムラインを取得
- ツイートの投稿
- リツイートやいいねの実行
- フォローやアンフォローの実行
- ツイートの検索
「Python」ではExcel等データの加工を簡単にすることができる
「Excel操作をしたいなら、マクロを使うしかない」
そんなことを考えませんでしたか?
実は「Python」では、Excelを操作するための機能もあり、マクロを使わないくても、表計算を行うことができます。またマクロでは定期的に実行するには苦労がいりますが、Pythonを自分のPCで動かすことができれば、スケジュールツールにより定期的に自動で実行することができます。
私の友達からこんなことを言われました。
毎日以下の作業を実施しているが、どうにか簡単にできないかな?
- とあるシステム(A社)にログインし、データAをダウンロード
- 会社のファイルサーバにあるファイルに、データAを挿入する
- そしてB社、C社・・・
- 翌日も翌々日も同じ作業を実施
「Python」を使用すれば、Chromeでとあるシステム(A社・B社・C社・・・)にログインし、データをダウンロードし、ファイルサーバにあるファイルに挿入するということができます。
上記のルーティン作業で毎日4時間はかかっている言っておりました。
「Python」でルーティン作業を自動化すれば、毎日4時間を毎日5分に短縮することができます。
「Python」でできることの活用例
「Python」を覚えていけば、作業の自動化やAPIで色々な情報を集めたりすることができます。
以下では一例ではありますが、筆者が実施している内容を紹介させて頂きます。
「Python」ではChrome操作が自動でできる/h3>
私の会社では出社後に社内のサイトへ接続し、ユーザID・PWを入力し、ログインします。
その後、打刻システムのURLへアクセスし、打刻ボタンをクリックします。
面倒です。すごく面倒です。
入退館システムを使っているのであれば、入退館履歴で勤怠も管理してほしいと思ってしまいます。
そんなことを言っていても、会社のルールなので、打刻をしないわけにはいきません。
しかし「Python」のseleniumを使用すれば、Chromeでの操作をプログラミングで書くことができます。
そのため、朝出社したら、pythonを実行しながら、ほかの予定等を管理している間に勝手に打刻が完了します。
1日30秒程度かかる作業が、1秒で終わります。
Googleでの検索自動化のため、「Python」のスクレイピングを活用/
ブログを書く時には、SEOで上位にあげるために、どのような記事が書かれているか確認をする必要があります。
その際には、Googleで検索をして、記事の項目(h2タグ)を参考にして、自分記事を書くことが一般的だと言われております。
しかしサイトを一つづつみるのは大変です。
そのような時はスクレイピングという技術を使用すれば、Google検索結果をcsvファイルへ出力することが可能となります。
『まとめ』【プログラミング初心者向け】Pythonでできること
Pythonでできることは大きく分けて、以下の3つがあります。
- Excelの操作やネット上のデータを自動で取得
- ツイッターのデータ取得
- AI(機械学習)を利用することができます
まずはあなたが時間がかかって、効率化したい・自動化したいと思っていることから取り組んでみるのをオススメします。
いきなりAIエンジニアになる・・・・っと思っていても、プログラミングの習得には時間がかかるため、壮大な夢すぎると続かない場合があります。
そのため、まずは自分の手間を少しづつなくしていくことから始めると、もっと効率化したいとかプログラミングは楽しいなと思えるようになれば、学習が続きます。