今回はどんな記事?
Python初心者理系大学生がTinderのいいねを自動化するアプリを作ってみたよ。
[st-midasibox title=”この記事を読むと…” fontawesome=”fa-check-circle faa-ring animated” bordercolor=”#FFC107″ color=”” bgcolor=”#FFFDE7″ borderwidth=”” borderradius=”5″ titleweight=”bold”]
✅Tinderを自動化した方法が分かります。
✅プログラミングの面白さが少し分かります。
✅プログラミングを勉強し始めるきっかけを作れます。
[/st-midasibox]
【はじめに】コロナ禍で出会いのない大学生たちへ
皆さんこんにちは!
明治大学情報局です。
大学生といえば、
キャンパスライフやサークル!
でもコロナ禍でそれらが制限された今、
出会いが無くて絶望してる人が多いのではないでしょうか?
その影響でしょうか、
最近マッチングアプリが流行ってきているようです!
マッチングアプリの特色と言えばやはり「好みの顔の人」だけを選べること!
やっぱり自分の好きな芸能人に似ている人とマッチしたいですよね?
齋藤飛鳥とマッチしたい…
本田翼とマッチしたい…
しかし、tinder利用者5000万人のなかから齋藤飛鳥似や本田翼似の人を見つけるころには
スワイプのしすぎて指の指紋が無くなってしまいます、、
指紋大事!
ということで、自分の好きな芸能人の顔に似ている人が自動的に右スワイプできたらめちゃくちゃ効率が良いのでは?
今回はTinderで好きな異性に似た異性を自動でいいねするアプリを作ってみました!
どうやって好きな芸能人に似てる人だけいいねするのか?
Pythonというプログラミング言語を使うことで出来る!
[st-midasibox title=”Pythonとは” fontawesome=”fa-question-circle faa-ring animated” bordercolor=”#03A9F4″ color=”#fff” bgcolor=”#E1F5FE” borderwidth=”” borderradius=”5″ titleweight=”bold”]
プログラミング言語のことで、最近よく聞くAIや機械学習などの開発にも使われている。
[/st-midasibox]
AIとか機械学習とか聞いた事はあるけどよくわからないよ。
AIや機械学習とは?
コンピューターをターザンだとしよう。
ターザンは無人島で育ち女性を見たことが無い。
そこにある日、女の子が無人島にやってきた。
女の子はターザンから石をもらったときは嫌がったが、花をもらったときは喜んだ。
ターザンは女性の好みを知らないんだ!
そう!だから色々試した。
へびは嫌がられ、うさぎは喜ばれた。
怒鳴ると嫌がられ、微笑むと喜ばれる。
そうして経験を積み重ねて女の子の心をつかむんだ。
そうして機械が学習していくんだね。
この繰り返しで脳を模した数理モデル、すなわち人工知能ができていくんだ。
女性とのやりとりもAIにやってもらいたいよ。
実際にアプリを作ってみた!
[st-midasibox title=”アプリの動作の流れ” fontawesome=”fa-file-text-o faa-float animated” bordercolor=”#757575″ color=”” bgcolor=”#FAFAFA” borderwidth=”” borderradius=”5″ titleweight=”bold”]
①Tinderから異性の画像を取得する
②その画像から顔を認識してトリミング
③好きな芸能人との類似度を調査
④類似度がn%以上ならいいね
[/st-midasibox]
この流れをプログラムにしていきます。
てことは、自分で人間の顔を機械が識別できるように学習させないといけないの?
既に誰かが開発した顔認識のプログラムを使えばいいからその必要はないよ!
完成したアプリがこちら!
このアプリで好きな芸能人を選択して、類似度次第でいいねができます!
↑取得した画像↑
↑類似度40%で選別された画像↑
綺麗な人が選別されている、、
これで何もせずに、好みのタイプに近い人にいいねができるね!
でもPythonの知識ゼロの人がどうやって作ればいいの?
次の項でどうやって知識ゼロから作ることができたのか説明します!
Pythonでこのようなツールを作れるようになるために
pythonの難易度はどれくらい?
結局プログラミングを勉強するんだよね?
大学の授業でプログラミングしたことあるけど、わけわかんなくて挫折した。。。
授業でJavaなどを使ったことがあって、プログラミングに挫折したという人もいるのではないでしょうか?
しかし、PythonはJavaなどに比べてわかりやすくシンプルな言語です。
基本的な英単語を知っていれば十分理解できるよ。
でもどうやって勉強すればいいの?
独学orプログラミングスクール
プログラミング学習は独学かプログラミングスクールの二択に分けられると思います。
ここでは、それぞれのメリットデメリットを紹介していきたいと思います。
独学のメリットデメリット
[st-midasibox title=”メリット” fontawesome=”” bordercolor=”#03A9F4″ color=”#fff” bgcolor=”#E1F5FE” borderwidth=”” borderradius=”5″ titleweight=”bold” myclass=””]
お金がかからない。
[/st-midasibox]
[st-midasibox title=”デメリット” fontawesome=”” bordercolor=”#f44336″ color=”” bgcolor=”#ffebee” borderwidth=”” borderradius=”5″ titleweight=”bold” myclass=””]
自分一人で問題を解決するのに時間がかかる。
[/st-midasibox]
独学の1番のメリットはお金がかからないことです。
本での学習、またはYoutubeなどにも無料で公開されている講義があるのでそれらを駆使して自力で勉強することができます。
ただ無料の講義なのでスクールに比べると手厚いものではない可能性もあります。
スクールのメリットデメリット
[st-midasibox title=”メリット” fontawesome=”” bordercolor=”#03A9F4″ color=”#fff” bgcolor=”#E1F5FE” borderwidth=”” borderradius=”5″ titleweight=”bold” myclass=””]
分からないところをを質問できるメンターがついている。
半強制的に学習を始めることができる。
[/st-midasibox]
[st-midasibox title=”デメリット” fontawesome=”” bordercolor=”#f44336″ color=”” bgcolor=”#ffebee” borderwidth=”” borderradius=”5″ titleweight=”bold” myclass=””]
スクールによっては費用が高額な場合もある。
[/st-midasibox]
プログラミングのスクールはオンデマンド型が多いので好きな時に好きなだけ勉強できます。
スクールのデメリットはお金だけです。
独学だと結局学習を後回しにしてしまう人にはスクールをお勧めします。
筆者はどうやって勉強したの?
「デイトラ」というプログラミングスクールのPythonコースを受講して勉強しました!
素人がプログラミングスクールで勉強してみた感想
「デイトラ」について
[st-midasibox title=”デイトラ” fontawesome=”fa-question-circle faa-ring animated” bordercolor=”#03A9F4″ color=”#fff” bgcolor=”#E1F5FE” borderwidth=”” borderradius=”5″ titleweight=”bold” myclass=””]
90日間でプログラミングスキルを身につけることができるオンラインプログラミングスクール
[/st-midasibox]
[st-mybutton class=”” url=”https://www.daily-trial.com/” title=”「デイトラ」ホームページ” rel=”” fontawesome=”” target=”” color=”#ef5350″ bgcolor=”” bgcolor_top=”” bordercolor=”#ef5350″ borderwidth=”5″ borderradius=”30″ fontsize=”” fontweight=”bold” width=”” fontawesome_after=”fa-chevron-right” shadow=”” ref=”” beacon=””]
[st-midasibox title=”「デイトラ」Pythonコース” fontawesome=”fa-check-circle faa-ring animated” bordercolor=”#FFC107″ color=”” bgcolor=”#FFFDE7″ borderwidth=”” borderradius=”5″ titleweight=”bold” myclass=””]
✅プログラミングを学習していく上でのスタートを切れる。
✅Tinderで好きな異性に似た異性を自動でいいねするアプリを作れる。
✅SNSを運用する上での分析ができるようになる。
✅作ったコードをアプリ化できるようになる。
[/st-midasibox]
私は大学一年生の時に教授に
「1,2年の間に何か言語を1つは習得しといた方がいい。」
と言われましたが、
独学で勉強するとなるとなかなかやる気も出ず、学習をスタートすることができませんでした。
やらなきゃなとは思ってはいるけど、
なかなかプログラミング学習をスタートすることが出来ていない
情報学科系の学生も多いのではないでしょうか?
プログラミングスクールを受講することは、強制的に学習をスタートさせるきっかけになりました!
ここまで読んでくれているということは 、プログラミング学習に少しでも興味を持ってくれたのではないでしょうか?
なのでここからは実際に、「デイトラ」を受講してみた感想を書いていきたいと思います。
スクールで受講して良かった・助かった点
①メンターの方に1年間なんでも質問ができる
コードを書いていく上で必ずエラーが起こる事はあるので、それを解決するためにもメンターの存在は必要不可欠だと思います。
ただのコードの書き間違いならば、自分だけの力で解決することができますが、バージョンなどのその他の問題も起きてくるので、そのような場合でもいつでも質問をすることができます。
またslackを使って質問を受け付けているので、他の受講者の方の過去の質問を見ることができるのでそれを見ることで解決できることが多々あります。
実際僕はそれのおかげで、自分から質問することがなくても他の受講者の方の質問を見ることで全てのエラーを解決することができました。
また自分で1から書いているコードやその他の質問
すなわち講義以外のことに関しても質問をすることが可能です。
②Python以外のプログラミング全般についても学べる
Pythonコースという名前になっていますが、上級編ではアプリ化をするのでその時に必要となってくる知識でWeb関係のHTML/CSS/Java Scriptなどの講義も収録されています。
またコース途中で出てくるAPIやJSONなど、今後自分でプログラムを作っていく上で必要となる知識や学習方法などについても講義してくれます!
プログラミングで必要となっていく知識を得られるので、大学のプログラミング授業を受けていても、「デイトラ」を受けていなかったら理解できていなかっただろうなと思うことが多々ありました。
以上が、理系学部の大学生が「デイトラ」を受講してみた感想です。
他にも様々なプログラミングスクールがあるので、比較して自分が頑張れそうなスクールで受講することをお勧めします!
【まとめ】
プログラミングって何ができるの?と思っていた方が多いと思うので、
この記事を機にプログラミングに興味を持って挑戦してみようと思う方が少しでも増えてくれればいいなと思います。
Python勉強して女性が喜ぶ返信をしてくれるbotを作る!
今後も「デイトラ」で学んだことを生かして情報局内外でのツールを作成していくのでよろしくお願いします。
最後まで閲覧ありがとうございました。
コメント