寺田 学(@terapyon)です。2024年10月の「Python Monthly Topics」は、Python Web UIフレームワークの1つであるStreamlitの基本的な使い方を紹介します。 2024年4月には、「Python Web UIフレームワークで作るデスクトップアプリ」と題し、Steamlitを使ってデスクトップアプリ化をする紹介を行いました。 今回はStreamlitにフォーカスを当てて、よく使う機能を紹介します。Streamlitにはたくさんの機能があり、公式ドキュメント APIリファレンスを見ても、どの機能から使って良いのかわからないという声がありました。今回は、筆者目線でよく使うであろう機能に絞って紹介します。 Streamlitとは StreamlitはPythonで構築できるWeb用のフレームワークです。Pythonのモジュールを定義することで、インタ
はじめに こんにちは。セキュリティアセスメント部の山根です。 ごった煮ブログの執筆者はデジタルペンテスト部のメンバーが多いですが、私はセキュリティアセスメント部の所属であり、普段はWebアプリケーションの脆弱性診断をやっています。脆弱性を見つけるのが好きで、プライベートでも脆弱性を探しています。 弊社には「IPA経由で脆弱性を報告すると報奨金がもらえる」という素晴らしい福利厚生が存在するため、脆弱性調査のモチベーションが高まります! さて、今回2つの脆弱性を発見したのですが、脆弱性が公表されるに至った経緯が興味深いものだったので紹介していきます。 CVE-2023-40587: Pyramid におけるディレクトリトラバーサルの脆弱性 CVE-2023-41105: Python における信頼性のない検索パスの脆弱性 CVE-2023-40587の発見 調査対象 最近はWebフレームワーク
先日 "Python の「仮想環境」を完全に理解しよう" というスライドを公開したらかなり反響がありました。 Python の開発環境の構築は、正直言ってかなり複雑だと思います。 pip・venv・pyenv・Pipenv などなど、似たような名前・似たような役割のツールがたくさん登場して、最初は全然意味が分かりません。 慣れればなんとかなるのですが、慣れるまではかなり苦しいです。 このようにとても難解であるにも関わらず、Python は機械学習などでよく使われることから、避けられないことも多いです。 そこでこの記事には、「そもそも Python の開発環境にはどんな観点があるんだ?このツールはなにを解決してくれるんだ?」という話をまとめます。
はじめに まばたき検知の原理 手順 入力動画 コード 出力動画 まとめ はじめに 顔のなりすまし対策は、顔認識システムのセキュリティにとって重要です。 まばたき検知は、このアンチスプーフィング手法の1つとして用いられます。 アンチスプーフィングについてのサーベイ論文は、2023年のDeep Learning for Face Anti-Spoofing: A Surveyが詳しいです。この論文ではさまざまなアンチスプーフィング手法と、それに対する研究が紹介されています。 Most traditional algorithms are designed based on human liveness cues and handcrafted features, which need rich task-aware prior knowledge for design. In term of
「Python」においてURLの解析に広く利用される標準ライブラリ「urllib.parse」の既知の脆弱性について注意が呼びかけられている。 空白文字で始まるURLにおいてブロックリストメソッドを回避できる脆弱性「CVE-2023-24329」について、CERT/CCが注意を呼びかけたもの。ホスト名、スキームの双方において影響を受ける。 ブラックリストにあるドメインやプロトコルのフィルタリングをバイパスし、本来アクセスが制限されるべきサイトへのアクセスやプロトコルを指定した制限などを回避することが可能。任意のファイルの読み取り、任意のコマンドの実行、サーバサイドリクエストフォージェリ(SSRF)などにつながるおそれもある。 米国立標準技術研究所(NIST)の脆弱性データベース「NVD」において、共通脆弱性評価システム「CVSSv3.1」のベーススコアは「7.5」、重要度は4段階中2番目に
米Microsoftは8月22日、Excelにプログラミング言語「Python」を搭載すると発表した。セルに「PY関数(=PY)」を入力するとPythonのコードを記述できるようになる。Pythonのライブラリとシート上のデータを参照して高度なグラフ作成や機械学習などができるという。 機能の名前は「Python in Excel」。利用には試験的に実装された機能を体験できるプログラム「Microsoft 365 Insider Program」への参加が必要。 Pythonコードは、クラウドプラットフォーム「Microsoft Cloud」上で実行。Pythonの各種ライブラリをまとめた「Anaconda」を活用しており、グラフ作成ライブラリを使ったデータの視覚化や、機械学習ライブラリを使った機械学習や予測分析などもできる。
Pythonにおけるimportの危険性とは 全ての運用関係者が知っておくべきPython特有のセキュリティリスク:便利だが攻撃者による悪用の可能性も Pythonのimportステートメントには、開発者や企業が注意する必要があるセキュリティリスクが伴う。これがどのように機能するのか、そしてなぜ簡単な解決策がないのかを解説する。 Pythonを使用する場合に対応が必要な、あまり注目されていないリスクが存在している。 最新のソフトウェア開発言語は全てモジュール式であるため、開発者はコードの大きなセクションを、より管理しやすい小さな部分に分割できる。これにより、通常はライブラリにグループ化されたコード単位を再利用できる。これらのライブラリは社内で作成されていないことが多く、グラフ作成、データベース接続、配列計算などの一般的なタスクを実行するために作成されたオープンソースコレクションだ。 コード
Python Software Foundationのステアリングカウンシル(Steering Council)は、Pythonのグローバルインタプリタロック(Global Interpreter Lock)を解消する方向で開発を進めていくことを明らかにしました。 グローバルインタプリタロックとは? グローバルインタプリタロックとは、その名前が示すとおりインタープリタ全体で1つのロックを持つことです。 これによりシングルスレッドのプログラムにおいては細かなロック制御が不要となって速度の向上がはかれる一方、マルチスレッドの平行性は制限されるという欠点があります。 また、スレッドセーフではないC言語などによるライブラリとの結合が容易となっています。 Pythonの標準実装であるCPythonでは、以前からグローバルインタプリタロックが採用されていました。 グローバルインタプリタロックを解消する
Pythonとコーディング規約プログラミングを学んでいる方、会社や組織で働いているITエンジニアの方であれば、「コーディング規約」という言葉を耳にしているかと思います。とはいえ、場合によっては厳格にコーディング規約を守っている方は少ないかもしれません。 なぜなら、コーディング規約通りにコーディングをしなくともプログラムは作れますし、何の問題もなく動いてくれるからです。では何のためにコーディング規約が存在するのか、なぜコーディング規約を守る必要があるのか、Pythonのコーディング規約PEP8について解説します。 【参考】:はじめに — pep8-ja 1.0 ドキュメント コーディング規約を一言で述べると、プログラミングでソースコードを記述する際に守りたいルールです。ルールを守らないとペナルティがあるのかと心配する方がいますが、基本的にペナルティはありません。 ただし、組織によっては厳格な
簡単な形態素解析 TF-IDF を計算してみよう ワードクラウドを作成してみよう Python で自然言語処理をしてみよう - Janome 編 Janome の第一歩 目次に戻る Janome を使う まずは Janome モジュールをインポートする.もしもエラーが表示されたら,準備を参考に,janome をインストールしよう. モジュールのインポートコピー from janome.tokenizer import Tokenizer 「今日はメロンパンを食べました」という文章を形態素解析してみよう.results を表示すると次のような結果になりました. 今日はメロンパンを食べましたコピー sent = "今日はメロンパンを食べました" t = Tokenizer() results = t.tokenize(sent) print(results) <generator object
自然言語処理はコンピューター科学と言語学の融合であり、そこから生まれた形態素解析は、テキストデータから価値ある洞察を引き出すための重要な手法です。Pythonで形態素解析を行うときの強力なツールが、Janomeというライブラリです。 JanomeはPython専用の形態素解析ライブラリで、テキストを詳細な単位に分解し、その結果をもとに高度なテキスト分析、たとえば感情分析やテキストマイニングなどに応用することができます。 一方で、プログラミング初心者やJanomeに詳しくない方々からすれば、「Janomeって何?」、「Pythonとどう組み合わせて使うの?」といった疑問が生じるでしょう。 この記事では、Janomeの基本的な概要から具体的なインストール手順、Pythonとの連携方法、さらには実践的な形態素解析までを初心者にもわかりやすく解説します。 おさらい:形態素解析とは? 形態素解析とは
「手っ取り早くMeCabを利用したい」 「WindowsにMeCabをインストールするのが困難」 「mecab-python3に依存するライブラリを利用する必要がある」 この記事は、上記の場合に役立つ内容となっています。 本記事の内容 mecab-python3とは?mecab-python3のシステム要件mecab-python3のインストールmecab-python3の動作確認 それでは、上記に沿って解説していきます。 mecab-python3とは? mecab-python3は、MeCabのラッパーです。 形態素解析を簡単に動かしたい場合、mecab-python3が役に立ちます。 Linux・macOSなら、MeCabは簡単に動きます。 しかし、Windowsの場合はそうではありません。 その様子は、次の記事をご覧ください。
Check Point Software Technologiesは6月16日(米国時間)、「PyPI Suspends New Registrations After Malicious Python Script Attack」において、PyPI (Python Package Index)リポジトリに悪意のあるパッケージが複数あることを伝えた。「DreamyOakXTimmywag」と呼ばれる作成者により、44もの不正なパッケージがリポジトリに追加されていたことが明らかになった。 PyPI Suspends New Registrations After Malicious Python Script Attack 特定された44の不正なPyPIパッケージは次のとおり。 sys-scikit-learn 17.8.18 sqlalchemy-requests 7.1.1 sqlalc
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く