■
C#のソースコード
pythonのソースコード
企業の偏差値出してみた!【スクレイピング&解析】
・自分の大学だとどれくらいの企業に入れるのか
・自分の会社はどれくらいの偏差値なのか
を調べるべく、スクレイピング&解析で企業の偏差値を出してみた
1.大学の偏差値リストを作る
マナビジョンがソース元
エクセルに貼り付けて、csvに変えたあと整形した
大学が同じでも、学部によって偏差値が異なる場合があるため
すべての学部の平均をその大学の偏差値とした
2.企業の採用実績校を調べる
マイナビ2022がソース元
前年の採用データの採用実績に大学名があるので、それをソース元とした
3.解析
採用実績に含まれている大学を元に大学の偏差値リストから偏差値を引っ張ってきて
偏差値の平均を出す
以上
4.完成品
coconalaでシステム開発サービスを販売してます!こんな感じのものであれば、ちゃちゃっと出来ます。良かったらどうぞ!
ツイキャスやLINE LIVEの配信をスマホでバックグラウンドで録画、保存するツールを作った!【説明】
注:
現在はAndroidのみ対応しています
対応配信サイトは
・ラインライブ
です。(ふわっちなど、要望があれば対応するかもしれません)
PC版は今の所ありません、需要があれば作ります
(要望や不具合などあればコメントください)
1.スマホにFFmpeg Media Encoderをインストールする
(これが配信保存用のソフトになります)
2.配信サイトのURLをコピーする
・ツイキャスの場合
・ラインライブ(LINE LIVE)の場合
3.URLを配信保存用コマンドに変換する
2でコピーした配信サイトのURLと保存するファイル名を入力してくだい
(ファイル名はなんでも大丈夫です)
2でコピーした配信サイトのURLを貼り付けます
「コマンドへ変換」ボタンを押すと、貼り付け用コマンドが表示されるのでコピーします
4.コマンドを貼り付けて録画開始!
1でインストールしたFmpeg Media Encoderをひらき、
ボタンを押し、画面を切り替えます
コマンドがすでに入力された状態なので削除します
配信録画ちゃんの貼り付け用コマンドを貼り付け、
右下の緑のボタンで録画を開始します
録画を停止する場合は、右下の赤いボタンを押してください。
配信が終了すれば自動で止まります。
5.録画を停止、完了したら
Googleフォトなどで見れるようになっています!
Python-Anacondaの実行環境を構築する【環境変数】
Pythonの実行環境を構築する際に環境変数の設定は必須です
1度設定してあり、別のパソコンに設定する際になんか色々詰まったのでメモしておきます
Anacondaを「C:\ProgramData」にインストールした場合のパスなので、インストールした場所が違う方は、置き換えてください
C:\ProgramData\Anaconda3
pythonを実行するために必要
C:\ProgramData\Anaconda3\Scripts
pipを実行するために必要
C:\ProgramData\Anaconda3\pkgs\openssl-1.1.1d-he774522_4\Library\bin
pipでライブラリをインストールする際に必要な場合がある
C:\ProgramData\Anaconda3\Library\bin
numpyを使用するために必要(他のライブラリも必要な場合があると思われる)
Firebaseを捨てた話
Firebaseを捨てました(捨ててない)
移行前
https://matometerminal.web.app/
移行後
https://matometerminal.herokuapp.com/
SPAに問題があるなと思ったんです
SPAというか、リアルタイムレンダリングなしで、全てAPIで情報引っ張ってくる感じです
googleにサイトを認識してもらう際に、クローラーが自身のサイトを訪れてスクレイピングしていくらしいんですが
その際に、非同期通信でサイトを更新するとちゃんと情報を持っていってくれないということが、問題です
そうですよね、非同期通信が終わったかどうかなんてクローラーが分かるわけ無いですからね
人間なら、ローディングアニメーションとかで読込中だってことがわかるけれど。。。
本当は、はじめVue.JsのNuxt.jsを使ってフロントエンドを作ろうと思ったんです
しかし、調べてみると結構面倒くさそうだったのです
しかも、構文を見ていくとDjangoのレンダリングと似てるんです
実際Django のレンダリングってあまり使ったことなくて
せっかくDjango にレンダリング出来る機能があるのに使わずWebAPIだけ作って
Nuxt.jsに投げてそっちで処理するってのも二度手間だと思ったので
Djangoのレンダリング機能を使って、サーバサイドレンダリングしました。
考えれば考えるほどDjango+Nuxt.jsを使ってウェブアプリを作ってみた!とか謎ですね
バックエンドエンジニアとフロントエンドエンジニアが別れて作業するならまだしも
1人でやってるような記事をよく見かけるので。
まぁ、自分がちゃんとNuxt.jsを理解できてないからでしょうか。。。
1年後には何言ってんだ自分ってなるくらい成長できると良いな
【超軽量】Pythonで文章の類似度を調べる
超軽量(辞書なし)で文章の類似度を比較できるコードを書きました
コードは下記の通り
import tinysegmenter def seach(sentence1, sentence2): segmenter = tinysegmenter.TinySegmenter() words1 = segmenter.tokenize(sentence1) words2 = segmenter.tokenize(sentence2) words1 = list(filter(lambda x: len(x) > 1, words1)) words2 = list(filter(lambda x: len(x) > 1, words2)) denominator = (len(words1) + len(words2)) / 2 molecule = len(set(words1) & set(words2)) return molecule / denominator
使い方(類似度が最大1で返ってきます。下記では、0.6以上の一致度を表示しています)
import doc_similar import csv hikaku = "比較したい文章" with open(r'article.csv') as f: reader = csv.reader(f) for row in reader: similar = doc_similar.seach(hikaku,row[1])#ここで比較実行 if similar > 0.6: print(row[1]+','+str(similar))
1.コードについて
ほぼ、「tinysegmenter」に頼ってます、こいつの紹介になるのかもしれないです
「tinysegmenter」はロジックで形態素を分かち書きしてくれるライブラリです
もちろん、これを使う前に「pip install tinysegmenter」してくださいね
2.軽量であることの利点
形態素解析というと、MeCabやらJanomeが有名ですが、どれも辞書基準で形態素解析をしています
そのため、重いんですよねMeCabの最新の言葉とか取り入れた辞書なんて1GB弱で、ただファイルサイズが大きいだけならまだしも
メモリ上に展開するので動作環境によっては厳しいんです。
無料の環境(HEROKU)とかね
3.作った経緯
何か大きい事件やら起きるとテレビもニュースサイトでもずーーーっと同じ内容の記事が出まくりますよね
それがうざったいのでフィルタを掛けたかったのです
4.課題点
もっとも、ちゃんと比較するには「Doc2Vec」とか使ったほうが良いでしょう
「Word2Vec」では学習モデル作ったり結構大変でした。
ドラクエの武器屋っぽいアフィリエイト/ECサイトを作ってみた
ドラクエの武器屋っぽいアフィリエイト/ECサイトを作ってみた
武器屋
いわゆるSPAなんだと思います。
SPAを作ろうとして作ったわけではないんですが、ゲームの中に入ったようで面白いなと思って作りました
htmlとjavascriptのみで作成しました
なので、公開されているものがすべてですね
買うを押せば実際に購入できます(Amazonに飛びます 即購入ではないのでご安心を)
まぁー、コスプレ用の小道具だと思うんで、こんなのこんなサイトから買う人なんて。。。
道具屋を作って、栄養ドリンクでも売ったら面白いかなとも思いました
あと、パクられるのは好きじゃないんでやめてください
技術紹介だとか、コピペOKだとか書いてある記事のものは全然パクってもらっていいですけれど
ちゃんとサイトとして紹介してるのはNGです
多分、ポートフォリオ的な感じです
面白いなって思う人が居ても、技術的にはヨワヨワの技術なので