- 1. Hubspotでエクスポートしたcsvを可視化したときの話
- 2. RSA暗号をpythonでハンズオン
- 3. 画像スクレイピングにタップ動作をはさみたい
- 4. UnrealEngine(4.27)でSemanticSegmentation画像を生成①
- 5. Vtuberの配信アーカイブで盛り上がったところをPythonで探してみた。
- 6. Pythonで美しいグラフを描こう!(plotnineのテーマ編)
- 7. PyCon JP 2022 day1 Playwrightを使って簡単に自動テストしてみる
- 8. pythonでfortigateの設定を自動取得する
- 9. 女性声優さんの顔をCNNで判別する
- 10. ROS(1)から呼ぶPythonはどこ?
- 11. Github上のアクティブなPullRequestがあるときにSlackに通知するBotを作った
- 12. ARC151回答メモ
- 13. ESP32とESP32でのUDP通信
- 14. 「それってあなたの感想ですよね?」~スプレッドシートでできる、A/Bテストの評価~
- 15. DjangoでのToDo管理アプリ作成
- 16. ABEMA Growth Techはすべてが最高な件
- 17. Google Cloud FunctionsでFizzBuzzを作成する
- 18. aws lambda numpy importエラー
- 19. 【Dr.Sum】Python Developer Toolを使ってみよう!【何ができる?】
- 20. 【Python】妻に真夜中のダンスレッスン予約を強要されたので、Webスクレイピングで回避を試みようとしている話 (6.プログラミングの始まり)
Hubspotでエクスポートしたcsvを可視化したときの話
## この記事の対象者
[Hubspot](https://www.hubspot.jp/) からエクスポートした csv を元に何か議論したい、けどうまい方法がわからず力作業でコピペしたりしてる人。
「QiitaにHubspotについて投稿している人おるのかな」と思って検索すると、API駆使している記事が出てきて、「いや、難しすぎぃ」と思った人。
そんなあなたにお届け。ちなみに僕は、HubspotにAPIが搭載されているのをさっき知りました。
## はじめに
アルバイトに慣れてくると、色々と仕事を任されるようになってくる。(いつもありがとうございます)
今回は、Hubspot にて本登録を済ませた人がどれくらいフォームからエントリーしてるかを可視化してみます。
可視化する具体的な内容は以下の通り。– 登録初月にn回エントリーした人が、mヶ月後に、何回エントリーしているかを見たい
– 面談済みの人が、どのようにエントリーしなくなっていってるかを知りたい。
– n月に仮登録から本登録に以降した人が、どれくらいエントリーしてくれているか知りたい。これの可視化のために
RSA暗号をpythonでハンズオン
私が15年前はじめて作成したプログラムがRSA暗号だったので、振り返りの意味もこめて記述します。
なお、当時はpythonではなく、Excel VBAやjavascriptを使って書いていました。RSA暗号は、公開鍵と秘密鍵のペアで構成されるもので、名前のとおり、公開鍵は公開されたもので、秘密鍵は自分しか知らないものです。
公開鍵は、{e,n }、秘密鍵はdで表される数字で、
暗号計算は、平文aに対して、
aをe乗してnで割ったあまりを求める
というものです。
同様に、復号計算は、暗号文bに対して、
bをd乗してnで割ったあまりを求める
というものです。たとえば、
{e,n } = {3, 15}
で、
d = 35
とします。これらの数字がどこから出てきたかは、後で説明します。甲さんが機密事項として、”3″という数字を入手し、それを乙さんに伝えようとします。しかし、通信は傍受されています。この時、甲さんは、乙さんの公開鍵で暗号化し、”12″という数字に変換して伝えます。
この通信を傍受した人は、”12″という数字の元が何なのかを知る事ができません。
唯一、乙さんだけが、
画像スクレイピングにタップ動作をはさみたい
# やりたいこと
サムネイル画像をタップしてすべてのサムネイル画像の元画像を取得したい# Selenium 導入
* SeleniumとchromeDriverとやらがいるらしい# つまづく
15分前後見ていたけど正直Path通すのが手順よくわからない。# 気付く
以下のサイトを参考にしてみた。https://watlab-blog.com/2019/08/10/chromedriver-path/#chromedriver123981245212531124731248812540125232604127861
クローム立ち上げて5秒経過後にブラウザ閉じるらしい。
`そんなすごいことできるんか…!!!!`
→できた。# 次の課題
次は検索とか、指定したurlへ飛ぶとかそんなのかな。
それができたら、ページ内の指定のサムネイルを順次タップする自動処理を作る目星が立ってくる。# 結局、この記事書いている人は何がしたいかというと。
子供が毎日同じ服を着る。
多分シンプルに安心するんだと思う。
でも、もし視覚情報で、`こんなコーディネートもあるんだ`と知
UnrealEngine(4.27)でSemanticSegmentation画像を生成①
# 概要
UnrealCVというプラグインを用いてUnrealEngine(Ver4.27)で下図のような
SemanticSegmentation画像をCG空間から取得する方法を説明していきます。![mask.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2922354/594f47dc-f309-73a1-e65d-acac6d063726.png)
今回は環境設定から簡単な取得方法までを説明していきます。
# 目次
– 実行環境
– UnrealCVとは?
– プラグイン取得
– VisualStudioで再ビルド
– Segmentationの取得
– 終わりに# 実行環境
~~~
Python 3.7.13
UnrealCV 0.4.0
~~~
上に加えてUnrealEngine4.27とビルド用にVisualStudioを用いています。
またUnrealEngineは2022/10/20時点でVer.5.0がリリースされていますが、UnrealCV側が未対応のため、
対応
Vtuberの配信アーカイブで盛り上がったところをPythonで探してみた。
# 背景
最近私は、YouTubeでにじさんじやホロライブの切り抜きを見ることにハマっている。
しかし、常々思うこととして本編を再生してないがいいのだろうかという疑問を抱えている。
かといって、配信アーカイブをすべて見る時間もない、、
ということで、配信アーカイブで盛り上がった部分をPythonを使い探すことはできないのかと思いプログラムを作ってみた。# プログラムの概要
今回のプログラムはYouTubeのチャット欄でコメント数が多い時間を盛り上がった部分と仮定する。
YouTubeのチャット取得方法としては**chat-downloader**を使用した。
このライブラリはYouTubeのURLからチャットを取得しJOIN形式で返してくれるものになる。### 補足
:::note warn
今回のソースコードは*YouTubeAPI*を使用していない理由としてはLIVE配信ではチャットを取得できるが、
アーカイブでは取得できないようなのだ。
:::
# ソースコード
さっそくだがソースコード
辞書型のデータを取得しやすくするためこちらのソースコードを貸していただいた。
ありが
Pythonで美しいグラフを描こう!(plotnineのテーマ編)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1275001/6f2f3870-f6d9-bd25-08af-b51f2a92e540.png)
## はじめにこの記事は、[**plotnine**](https://pypi.org/project/plotnine/) のテーマ紹介です。
[**plotnine**](https://pypi.org/project/plotnine/)は様々なテーマ設定が可能です。
https://qiita.com/hima2b4/items/fc0c43309a7320f34eeb
設定は簡単なので、気に入ったテーマがあればぜひ。
## 実行条件など>-Google colabで実行
-[前回の記事](https://qiita.com/hima2b4/items/fc0c43309a7320f34eeb)で描いた、ワインの種類別散布図(直線回帰付き)をテーマ別に描きます。## 実行
まずはplotnineデフ
PyCon JP 2022 day1 Playwrightを使って簡単に自動テストしてみる
現地参加したPyCon JP 2022のセッションのまとめ5本目です。
今回は、Day1の「Playwrightを使って簡単に自動テストしてみる」です。
# 動画
# スライド
– 公開なし# スピーカー
– Takahiro Hama
– PyConKyushu実行委員会(運営代表)# 内容まとめ
– ブラウザを操作するライブラリPlaywrightについて## Playwrightとは
– Microsoft社のOSS
– https://gi
pythonでfortigateの設定を自動取得する
### 前提条件
Fortigateはexec_commandではchannelが切れてしまうようで、config vdom
edit XXXXX
に入れない### invoke_shell()を利用する
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(‘hostname’, username=’username’, password=’password’)
channel = client.invoke_shell()
こんな感じ。stdin = channel.makefile(‘w’)
stdout = channel.makefile(‘r’)stdin.write(”’
config vdom
edit XXXXX
show firewall policy
exi
女性声優さんの顔をCNNで判別する
### はじめに
機械学習の勉強を始めてから3カ月程経ち、先日Tensorflowについて学習しました。身に着けるためにもそれを用いて自分でモデルを作りたいと思い、今回CNNによる画像分類を行いました。
顔の分類ということで内容としてはありきたりですが、女性声優さん8人の分類をしたいと思います。
Qiitaで顔判別の記事を探しこちら([乃木坂メンバーの顔をCNNで分類](https://qiita.com/nirs_kd56/items/bc78bf2c3164a6da1ded))をかなり参考にさせていただきました。
CNNの原理だったりOpenCVの説明、コードの細かな解説なんかもしたいところではありますが記事書き自体不慣れなため後日記事を更新して追記していけたらと思います。### 手順
1. スクレイピングで画像収集
1. OpenCVで顔領域の切り取り
1. 画像の選別(手作業)
1. 訓練データの水増し
1. モデルの構築と学習
1. テストデータの評価
1. カメラを使ってリアルタイムで判別### 0. import
最初に必要なimpor文をまとめてお
ROS(1)から呼ぶPythonはどこ?
## TL;DR
pyenvを入れていれば、pyenvのpython。すなわち、`which python`で取得されるpythonパス。
(基本的にpyenv入れないと僕は何もできないので、pyenv入っていない人はごめんなさい)## 根拠をゆえ!()
“`bash
$ rosrun mediapipe_ros app.py
[ERROR:0@0.785] global /io/opencv/modules/videoio/src/cap.cpp (164) open VIDEOIO(CV_IMAGES): raised OpenCV exception:OpenCV(4.6.0) /io/opencv/modules/videoio/src/cap_images.cpp:253: error: (-5:Bad argument) CAP_IMAGES: can’t find starting number (in the name of file): /home/yuki/workspace/lidar_data/DATA_AOYAMA-suiyoubi/walk-s
Github上のアクティブなPullRequestがあるときにSlackに通知するBotを作った
# 経緯
会社のソースコード管理にGithubを使い開発を行なっていると、プルリクエストを作成してレビューを依頼する という流れがよくあると思います。しかし、**土日を跨いでしまったり、普段使わないリポジトリでのPRを出した際など**に
うっかりレビューすることを忘れられてしまい、放置されるという事がまぁよくあります。その度に毎回「レビューお願いします!」というコミュニケーションをとる必要が出てしまい、
正直無駄なコミュニケーションだなと思ったので
Graffityではレビュー待ちのPRをリポジトリ単位で通知するBotを作ってSlackで運用しています動作する様子↓
![github.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/159111/2b698c4a-1e88-9f4a-1bf3-102107e41cd5.png)こんな感じで毎朝(**11時始業なので11時は朝です**)各リポジトリのアクティブなPRの個数を通知してくれます。
全部マージ済み or ドラフトPRしかない場合
ARC151回答メモ
0.はじめに
最近毎週レギュラーが開催されるようになり、みるみるランクが下がるように・・・。
1問必解を目指しています。1.A – Equal Hamming Distances
久々に2時間フルに取り組みましたが、回答できませんでした。
その後リベンジし、AC頂きました。回答の考え方
1)すべて0の文字列と比較した場合の
S列とT列それぞれのハミング数を取得
1-1)SとTのハミング数が同じ→ALL0が正解
1-2)SとTのハミング数を足すと奇数→解なし(-1)
1-3)2へ
2)S列T列を右(添え字j)からチェックしていく
回答文字列”Ans”の初期値はALL”0”
2-1)S[j]==T[j]の時
Continue
2-2)Sのハミング数が大きくかつ、S[j]が”1”の時
Ans[j]に1をセット
Sのハミング数から1を引き、Tのハミング数に1を足す
2-3)Tのハミング数が大きい場合かつ、T[j]が1の時
Ans[j]に1をセット
Tのハミング数から1を引き、
ESP32とESP32でのUDP通信
## はじめに
ESP32同士でUDP通信を行いたい。### 実装
送信側のコンソールで, 入力したメッセージを受信側に表示する・送信側
“`udp_sender.py
import ubinascii as ub
from usocket import socket, AF_INET, SOCK_DGRAMHOST = ‘192.168.100.213’
PORT = 8086
# ADDRESS = “127.0.0.1” # 自分に送信s = socket(AF_INET, SOCK_DGRAM)
# ブロードキャストする場合は、ADDRESSを
# ブロードキャスト用に設定して、以下のコメントを外す
# s.setsockopt(SOL_SOCKET, SO_BROADCAST, 1)while True:
msg = input(‘> ‘)
# 送信
s.sendto( ub.hexlify(msg), (HOST, PORT))
print(f”done”)s.close()
“`・受信側
“`udp_re
「それってあなたの感想ですよね?」~スプレッドシートでできる、A/Bテストの評価~
## 読者ターゲット
– A/B テストの存在は知っている
– 効果検証が大事だと思っている
– スプレッドシートで検定したい## これは何か
こんにちは。プロダクトマネージャーの門脇です。
みなさんは、
### 「施策Aと施策B、どちらが効果あるんだろう?」
と悩んだことはありませんか?例えば、
– 営業や採用のDMの文章はどっちのパターンが効果あるんだろう
– 広告はどっちのクリエイティブが効果あったんだろうみたいな悩みです。いわゆる「A/Bテスト」という手法が利用されるやつです。
世間には、RやPythonを利用した検証手法が溢れていますし、私自身どちらも利用したことがあります。
が、今回は、スプレッドシート上で検定まで行ってみたいなと思い、やってみました。### 今回のケース
– 以下のようにスプレッドシ
DjangoでのToDo管理アプリ作成
【概要】
Webアプリの基礎となるCRUDを実装したToDo管理アプリを、Djangoを使って作成しました。
ローカル環境で誰でも動かすことができるので、ぜひいろいろ試してみてください。【画面一覧】
・ToDo一覧画面
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2919458/4cdb7dcd-9a4d-3a44-2587-3503443a8580.png)・ToDo詳細画面
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2919458/98452e4d-67b5-91df-35b6-45cd6b2dfa03.png)・ToDo作成画面
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2919458/b102f636-45b8-fc95-e315-cd310f1a8fe0.pn
ABEMA Growth Techはすべてが最高な件
# 1 きっかけ
機械学習エンジニアになりたい。
私はこの夢の実現のために参加したのがこのインターンです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1493403/cdc384cc-372c-f1c0-8e1e-9001023cc3d2.png)
>ABEMA Growth Tech ONLINEでは、サイバーエージェントの人気サービス「ABEMA」に対し番組レコメンド機能を制作していただきます。
これまでよりも、さらに難易度がレベルアップしたABEMA Growth Techを実施します。
インターン前半はABEMAの視聴データを題材として、機械学習を用いた番組レコメンド機能を利用可能なAPIとして構築します。
バックエンドはABEMAの現場で実際に利用されているGoやKubernetes等を用いて実践レベルで実装していただきます。
また後半は、皆さんのアイデア力と実装力を用いて、実際にABEMAの機能改善をしていただき、その内容を社員に提案していただく予定です。
そして本インタ
Google Cloud FunctionsでFizzBuzzを作成する
# はじめに
近年FaaSが流行しています。
僕も試してみたいと考えていたため、今回FizzBuzz判定APIを作ってみようと思います。# 完成品
https://github.com/PenguinCabinet/FizzBuzz_Google_Cloud_Functions# 環境構築
gcloud CLIを使用していますので、インストールしてください。https://cloud.google.com/sdk/docs/install?hl=ja
念のため、その他のバージョン環境。
“`
OS:Windows 11
言語処理系:Python 3.10.5Google Cloud SDK 400.0.0
bq 2.0.75
core 2022.08.26
gcloud-crc32c 1.0.0
gsutil 5.12
“`
# 関数を作成する
まずFizzBuzz判定用の関数をサクッと書いちゃいましょう。
“`python
def CheckFizzBuzz(request):
data = request.args.to_dict()
tr
aws lambda numpy importエラー
aws lambdaでDBにinsertする処理を作成していたのですが、その際pandasが必要でimportしたところ、
“`
Function Logs
START RequestId: 00d85ae0-ce8e-4472-91f5-413f21e3bea3 Version: $LATEST
[ERROR] Runtime.ImportModuleError: Unable to import module ‘lambda_function’: Unable to import required dependencies:
numpy:IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!
Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.We have
【Dr.Sum】Python Developer Toolを使ってみよう!【何ができる?】
# やりたいこと
Dr.Sumというデータベース製品はPythonと連携して大量データを柔軟に加工・分析することができます!
本記事では、Dr.Sum上でのpython開発をサポートするpython Developer Toolの使い方について解説していきます。# 知っておいてほしいこと
### Dr.Sumとは?
Dr.Sumとは、高速集計に特化したデータベースソフトです。
PostgreSQLやMySQL、OracleやSQL Server、SnowflakeやRedShiftなどが同じ土俵のツールになるかなと思います。https://www.wingarc.com/product/dr_sum/
### Python連携機能とは?
そんなDr.Sumにはpythonと連携できる機能があります。
Dr.Sum内の大量データを高速に処理することができます。
SQLでは難しい加工や、機械学習を使った分析などができるようになりました!嬉しいですね。https://cs.wingarc.com/manual/drsum/5.6/ja/UUID-eada69d6-5fd7-1a
【Python】妻に真夜中のダンスレッスン予約を強要されたので、Webスクレイピングで回避を試みようとしている話 (6.プログラミングの始まり)
前回は、「5.会員・予約情報の管理」について発信しました。
今回からいよいよプログラミングに突入します。以降を読み進めると、「えっ、こいつこんな初歩の初歩から理解してないの?」と思われるかもしれませんが、はい、そのとおりなんです。初心者がググりまくって「強要」に立ち向かっていく様を、温かい目で閲覧いただければ幸いです。:tired_face:## 何をどう書いていけば良い?
今回の予約プログラムは、極々小規模なので、上から下に向かってダラダラと記述しても問題ないと思います。でも一応一般的な書き方ってあるのかなと思いググってみました。すると **「これは何をしているのであるか???」** というような、Python特有の書き方にぶち当たりました。それが下のようなものです。“`Python
# main関数です。
def main:
print(“main proc”)# 意味不明な部分です。
if __name__ == ‘__ma