Python関連のことを調べてみた2022年12月15日

Python関連のことを調べてみた2022年12月15日

Selenium4系でのWebスクレイピング

# 概要
Selenium4系での記述でWebスクレイピングした内容をまとめます。

## 経緯
仕事でWebシステムの管理ページから複数のログなどを取得するscriptを作って、自動化する取り組みがありました。
何年か前にSeleniumでWebスクレイピングしていたので、応用すればいいかって思ってたら、Selenium4系だと記述方法変わってて少し混乱しました。
後、Pythonも3.11使うように指示があったので、以前使っていたモジュールが対応してなかったり、色々考える部分がありました。

## 環境
Python3.11
selenium 4.6.0
ChromeDriver([お使いのGoogleChromeのVerに合わせてダウンロード](https://chromedriver.chromium.org/downloads))

# 内容
Selenium4系での記述の違いは以下になります。

elementの後に( )で囲う範囲が広くなりました。

“`python
driver.find_element(By.NAME,”name”).send_keys(“hog

元記事を表示

【SlackBot】冬の登校時間を管理するBotを作った?

MYJLab Advent Calendar 2022、15日目の記事です!
前回は@takumiakasaka1231の[Prisma+fakerでサクッとデモデータを作る](https://qiita.com/takumiakasaka1231/items/e9a4a0854445f147dbfb)
でした!
PrismaはGraphQLと相性が良くて個人的に推せるORMなので, 勝手にテンションが上がりました?

## これは
私はよく大学に遅刻してしまうのですが, 冬は自分の意志の弱さにお外の寒さが加わり, 余計に家を出るのが遅くなってしまいます.
今回はこの課題を解決するために, 登校時間を管理してくれるマネージャーをslack botで作りました. 名前はMANEKOです?(私は犬派です)
MANEKOに期待することは以下の3つです.

– 登校予定時間を覚えていてくれる
– 登校予定時間に間に合ったら褒めてくれる
– 登校予定時間に間に合わなかった場合, みんなの前で叱ってくれる

弊ゼミでは, timesチャンネルを作っている人が何人かいて, 私もtimesチャンネルが

元記事を表示

COPY INTO によりデータロードするプログラム開発時に同一ファイルをソースとする場合の注意事項

## 概要

データエンジニアリングのプログラム開発を行う際にテスト用ファイルをソースとすることがよくありますが、COPY INTO により開発する際には同一ファイル名が取り込まれないことに注意が必要です。Delta Lake 形式のテーブルのディレクトリにて取り込み済みファイル一覧の情報が管理されているようで、ディレクトリの初期化が必要となるようです。この仕様を知らずに開発を行うと、処理が完了しているにも関わらず、データが想定通りに取り込まれないと勘違いしてしまいます。

COPY INTO では、ドキュメントに記載のある通り、ソースとなるファイルを取り込むことを一度だけ実行されることが保証されています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/24031/4922ad40-ee44-c5b6-dae1-74ba14e58685.png)

引用元:[COPY INTO を使用してデータを読み込む – Azure Databricks | Microsoft Learn](ht

元記事を表示

Jupyter Notebookのインストールと基本的な使い方について

# はじめに
今までPythonを使うときはVScodeやGoogle Colabを使っていたのですが、[とあるチュートリアル](https://neo4j.com/developer/graph-data-science/applied-graph-embeddings/)を進めていく上で、Jupyter Notebookのインストールを推奨されたため備忘録としてJupyter Notebookの基本的なことについて記事にしようと思います。

この記事がどなたかのお役に立つ日が来れば嬉しいです?
※初学者なりに理解した内容ですので温かい目で見守ってください。

# 目次
– Jupyter Notebookについて
– Jupyter Notebookとは
– Jupyter Notebookを使うメリット
– インストールしていく
– 環境
– ターミナルにて
– 起動
– 基本的な使い方
– ブラウザが起動してから
– 新規作成
– 試しに簡単なコードを入力してみる
– まとめ

# Jupyter Notebook

元記事を表示

イベント人員分配を制約充足問題として解いてみよう

## 背景
仕事で最適化問題を取り扱う事があり、離散最適化を応用してみたことがありました。
最初はイメージつかなかったのですが、応用範囲が広いことに気づき、だんだん楽しくなってきました。
主に、Google OrToolsというライブラリを使っています。
https://developers.google.com/optimization

実は、会社のアドベントカレンダーで投稿した記事の再投稿です。

## 例題
例題は、仕事とは全く関係なく、妻にから依頼された相談をちょっと脚色して問題にしています。

– イベントを5日間開催します。
– 1人1回だけイベントに参加できます
– 5日間のうち、最初の2日間は大会場、残り3日間は小会場で収容人数が異なります。
 収容人数を超える人は受け入れできません。
– 大会場 35人
– 小会場 10人
– 参加可能日を聞くためにアンケートを取ります
– 5日間のうち、参加可能な日を優先順に記入
– できるだけ多くの人を優先順位が高い日に割り振って欲しい

このように、数学的に制約を表現でき、制約を満たす解を探す問題を

元記事を表示

「読めるコード」を書くための7つのチェックポイント

この記事は[Nuco Advent Calendar](https://qiita.com/advent-calendar/2022/nuco) 2022の15日目の記事です。

# なぜ「読めるコード」を書くのか
「読めるコード」を書くことで、コードを読んだだけで何がしたいのかが明確にわかるため、修正や機能追加の際にもコードの解読に時間と労力を割かずにすみます。
また、理解を誤ったまま目的からそれた実装をすることを避けられます。

以降紹介するチェックポイントと、ご自分のコードと照らし合わせてクリアできているか確認をしてみてください。

# 7つのチェックポイント
「読めるコード」を書くためには以下の7つのチェックポイントを意識することが重要です。
これらのチェックポイントは、障害を起こさないために意識すべき観点で、コードレビューの際にはこれらのチェックポイントを守れているかどうかを基準に、そのコードが良いコード(読めるコード)かどうかを確認します。
そのため、コードを書く際にも意識すべき観点として使用します。

## ①コードはシンプルに
当然のことですが「複雑」なものよりも「単純

元記事を表示

seleniumをコンテナ化して動かしてみた

:::note info
この記事は、[カサレアル Advent Calender 2022](https://qiita.com/advent-calendar/2022/casareal)の15日目のエントリです。
:::

# seleniumをコンテナ化して動かしたいですよね?

* はい?
* はい

さて、[前回の記事](https://qiita.com/casareal_user/items/0f8ef4e7cd954a7f6846)の反響を確認したところ

「コマンドの数多すぎじゃね??」
とか
「仮想環境構築する際Cloud9の環境に左右されるじゃねえか??」
とか
たくさんのご批判の声を頂きました。。。???
(大嘘)

まあ、コマンドコピペするのめんどくさいですよね、わかります。。。

というわけで、seleniumをコンテナ化をすることにしました。

コマンド類をDokcerfileに全部書けるし、Cloud9の環境に左右されることもありません?

なるべくシンプルに、コピペでおkというスタンスでを書きました。

とりあえず動かして気持ちよくなりたいっ

元記事を表示

Azure の Public IP Ranges から IOS の ACL 設定を生成

本記事は Microsoft [Azure Tech Advent Calendar 2022](https://qiita.com/advent-calendar/2022/microsoft-azure-tech) の 15 日目の記事です。

Azure では、Azure 上で利用され得る Public IP (Global IP) の範囲を公開しています。
今回は上記の Public IP 範囲をもとに Cisco IOS の ACL 設定を自動生成する Python スクリプトを紹介します。

ネットワーク自動化や Azure SDK for Python をいじる際のチュートリアルとしても手頃な題材かと思うので、これらに興味のある方も是非ご覧ください。

# はじめに
Azure では、以下のサイトで Azure 上で利用され得る Public IP の範囲を公開しています。
[Azure IP Ranges and Service Tags – Public Cloud](https://www.microsoft.com/en-us/download/details.a

元記事を表示

元記事を表示

Android×Pythonで気圧計作ってみた

## はじめに

 山形大学大学院修士1年のHagianです。この記事は[身の回りの困りごとを楽しく解決! by Works Human Intelligence Advent Calendar 2022](https://qiita.com/advent-calendar/2022/works-hi-1)の15日目となります。

 突然ですが、私は頭痛を抱えています。月に1回程度来る偏頭痛のほかに、気圧変動(特に上昇時)によって緊張型頭痛がやってきます。前兆をつかむため、気圧を知りたいな〜と思うことがよくあります。

 しかし気圧計が手近にある場合を除いて、気圧を知ることは意外と難しいように思います。気象庁および各地の気象台では観測が行われていて、気象庁のWebサイトから知ることができますが、毎正時かつ海面更正された値であり、実測値ではありません。そこで本稿では、**スマホで手軽に気圧の実測値を得られる**ツールを作成したので紹介します。

### 困っていること

* 知りたいときに気圧を知れない
* 自分の現在地の気圧を実測値で知りたい

### 実

元記事を表示

SageMaker Pipelinesで始めるMLOps

# はじめに
本記事は、AI/ML on AWS Advent Calendar 2022の15日目の記事です。

私は現在都内のベンチャー企業にてデータエンジニア(データサイエンティスト)としてインターンをしています。
業務内容としては、データの前処理からエンドポイントの作成まで幅広く行っております。
普段業務する中で、MLOpsの重要性をひしひしと感じたので、記事にしたいと思いました。
そこで今回は、MLOpsを実現するAWSのSageMaker PipelinseというCI/CDサービスについて説明していきたいと思います!

データエンジニア・データサイエンティストを目指している学生の方やMLOpsに興味のある方にとって有用な記事となれば幸いです。

# 目次
[1.MLOpsの重要性](#1-MLOpsの重要性)
[2.SageMakerPipelines](#2-SageMakerPipelines)
[3.手順の説明](#3-手順の説明)
[4.最後に](#4-最後に)

# 1. MLOpsの重要性
以下は、私が機械学習プロジェクトを進めていく上で感じた課題になります。

元記事を表示

サッカーボールの位置を上から見てみーる(Python3.9、OpenCV)

# はじめに
サッカーボールの位置を上から見てみよう

# 開発環境
– Windows 10
– Python 3.9

# 実行

~~~main.py
import cv2
import numpy as np
import math

ratio = 1.0
filename = “soccer.jpeg”

p1 = np.array([1280, 1157])
p2 = np.array([4392, 1157])
p3 = np.array([602, 1896])
p4 = np.array([5070, 1896])
p5 = np.array([[[2047,1633]]], dtype=’float32′)
print(p5)
image = cv2.imread(filename)
height, width = image.shape[:2]

width2 = np.linalg.norm(p2 – p1)
width2 = math.floor(width2 * ratio)

height2 = np.linalg.norm(p3 – p1)
hei

元記事を表示

あれあれ? CPU 増やしたのに速くならないぞ?

この記事は [モチベーションクラウドシリーズ Advent Calendar 2022](https://qiita.com/advent-calendar/2022/mcs) 15 日目の投稿です。

:::note
弊社ではテックブログもやっておりますので、宜しければこちらもどうぞ!
https://link-and-motivation.hatenablog.com/
:::

## はじめに

Web アプリケーションを開発している皆さん! 日夜性能問題に悩まされていると思います?
本記事では性能問題における **「CPU 使用率の見方」** に焦点をおいて話そうかと思います!

## CPU あるある

CPU にまつわる謎? は大体次の2ケースかな〜、と思います。

:::note
Amazon RDS (MySQL DB) の例で挙げてみます。
:::

### ① クエリ応答が遅いからスケールアップ! → あれ?変わらないぞ?

Web アプリ開発していると、API 応答が遅い → 原因は重いクエリ (SQL) というケースはよくあるかと思います。当然速度改善したいです

元記事を表示

Pythonista3 でAVAudioSourceNode を使って音を生成して鳴らそう! 前編

この記事は、[Pythonista3 Advent Calendar 2022](https://qiita.com/advent-calendar/2022/pythonista3) の15日目の記事です。

https://qiita.com/advent-calendar/2022/pythonista3

一方的な偏った目線で、Pythonista3 を紹介していきます。

ほぼ毎日iPhone(Pythonista3)で、コーディングをしている者です。よろしくお願いします。

以下、私の2022年12月時点の環境です。

“`sysInfo.log
— SYSTEM INFORMATION —
* Pythonista 3.3 (330025), Default interpreter 3.6.1
* iOS 16.1.1, model iPhone12,1, resolution (portrait) 828.0 x 1792.0 @ 2.0
“`

他の環境(iPad や端末の種類、iOS のバージョン違い)では、意図としない挙動(エラーになる)なる場合もあ

元記事を表示

tacotron2でvtuberの音声合成をしてみる

# はじめに 
こんにちは。
今回は、N予備校プログラミングコース Advent Calendar15日目の記事として、
tacotron2を使った音声合成に挑戦してみます。

https://qiita.com/advent-calendar/2022/nyobi
# tacotron2とは
tacotron2はGoogle社で開発された、テキストから音声に変換するためのアルゴリズムです。
テキストをメルスペクトログラムに変換し、メルスペクトログラムから音声に変換することで音声を作成できます。
tacotron2はテキストをメルスペクトログラムに変換する部分を行い、メルスペクトログラムから音声に変換する部分はWaveGlowというアルゴリズムが行います。
# 環境
– Python3.6.2
– OS:windows11
– CPU:Ryzen5 5600x 6-Core
– GPU:RTX3060
– RAM16GB
– CUDA11.8
# tacotron2の導入
tacotron2本体をclone
“`
$ git clone https://github.com/NVID

元記事を表示

Stable Diffusion 転移学習

本記事では、Stable Diffusionの転移学習の進め方を紹介します!
GPU環境をお持ちの方は試してみてください?

# 初期設定

## 環境
– Linux 20.0.4
– GPU
– NVIDIA GeForce
– 20GB以上 推奨
– CUDA 11.8
– NVIDIA Driver 520.61.05
– Anaconda 4.12.0
– Python

Anaconda・NVIDIAの導入は今回は扱いませんので
以下の記事を参考にしてください。

https://www.anaconda.com/products/distribution

https://qiita.com/cinchan/items/9718e1f26146dc5e3eaa

## 導入

[textual_inversion](https://github.com/rinongal/textual_inversion)のレポジトリからクローンします。
“`bash:ターミナル
git clone https://github.com/rinongal/textual

元記事を表示

discord botでドロップダウンメニューを作る

# 前提

これは[discord botからminecraft serverを動かしたいアドベントカレンダー](https://qiita.com/advent-calendar/2022/itohal)の記事です.

また,
– WSL, ubuntu 22.04.1
– discord.py 2.1.0
– Python 3.10.6

という環境で行っています.

# Select

[公式ドキュメント](https://discordpy.readthedocs.io/ja/latest/interactions/api.html#select)によると

> Represents a UI select menu with a list of custom options. This is represented to the user as a dropdown menu.

みたいです.`as a dropdown menu`とあるようにドロップダウンメニュー(ドロップダウンリスト)を作成するものです.名称はリストの方でもメニューの方でもいいみたいなので,この記事ではド

元記事を表示

基本的なソートを勉強してみた〜ひよこになるため日記【3日目(12/11)】〜

# 3日目
こんにちわ。
今日はドトールコーヒーに来て勉強をしています。
ドトールコーヒーは安くて、wi-fi、コンセントもある。めちゃくちゃ学生の味方だと思ってます。
ここだけの話で本当はスタバに行きたいけど、お金がないかつ田舎すぎてスタバが近くにないだけ、、、、
俺もプログラミング勉強して、都会に出るぞーー?と意気込んで3年が経った男です。
この日記もいつまで続くのか、、、
そんなことはおいといて、今日やったことはこちら

– ABC問題の今後の勉強計画
– 実際にやってみた

この三本立てです。よろしくお願いします。

# ABC問題の今後の勉強計画
まず、一回自分は何のためにプログラミングを勉強しているのか、、と改めて考えたところ
理由はは3つあって

– 就職活動でのコーディングテストを受かるため
– 情報系の学生としての威厳を保つため
– プログラミングかけたらモテそうだから

3つ目の理由は置いといて、こんな理由です。
やっぱ1番目の理由がめちゃくちゃ大きいです。
こんな形で今焦って勉強しているって感じです。

## 勉強スケジュール
今のところは2月にコーディングテス

元記事を表示

軽量ETLライブラリpetlを使ってみた

Pythonの軽量ETLライブラリ[petl](https://petl.readthedocs.io/en/stable/index.html)の検証コードの紹介となります。
EDINET 書類一覧API[^1]を用いてJSONデータを取得し、加工、テーブルおよびログを行っています。

## 検証コード
~~~python:petltest.py
import logging
import logging.config
import yaml
import requests
import petl
import json
import MySQLdb
from collections import OrderedDict

logger = logging.getLogger(__name__)

def main():
# JSONデータ取得(EDINET API)
res = requests.get(“https://disclosure.edinet-fsa.go.jp/api/v1/documents.json?date=2020-09-01&type=2”

元記事を表示

mayaのカメラを保護したい

レイアウトの人がカメラを設定して
カメラのアニメーションをつけた後に
アニメーションの人にパスするときに
アニメーションではカメラをいじらないでほしい場合もあるそうで。

じゃぁカメラをかなり頑張らないと編集できない状態にしてみよう という試み

案出し

幾つか考えられるが

– カメラ自体をリファレンスする
– カメラのアニメーションもリファレンスする
– カメラをabcキャッシュにする
– カメラノードをロックする

と 色々考えられるのでやってみますか

カメラ自体をリファレンスする

カメラを適当に保存して、新規シーンにリファレンス
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1484234/38554577-396b-f8ad-8260-1e5a75c754f0.png)

– キーは打てない
– ロック状態にはできない
– キーフレーム打てないけど動かせはする

さて、ここで問題が
– break Connectionsできる
– からの キーフレーム再設定できる

元記事を表示

OTHERカテゴリの最新記事