AWS / PHP / Python ちょいメモ

amazon web service , PHP, Python を使ったときのメモ。日本語でググってもわからなかった事を中心に。

python

Djangoベースの Wagtail さわってみた

ブログ・CMSっていうと Wordpress というイメージもってます。個人的に悩ましいのは、(いまは)普段使いじゃないPHPベースなこと。あと一度見たテンプレートに、がしがしコードが書いてあったので、扱いづらそうなイメージ持ってしまったこと。そこで見つけ…

お得な 新刊Python 電子書籍をかってみた : 5/10まで

このGW、IT技術系の電子書籍が安いなぁって思って、何冊か買ってみました。翔泳社さんのPDF、5/10まで半額ポイントバックの期間限定セール! 翔泳社の新生活応援セール | 仕事や趣味に役立つ話題書が半額! Pythonトリック けっこうメルマガで宣伝いただいて…

Python 3 の Ubuntu Server でのサポート履歴

先日実施した、Ubuntu Server のアップグレード。過去の記憶が少しもどってきて、Apache 2.2 から 2.4に変わった時に、軒並みサイト落ちたなとか思い出してきたw18.04 までいくか? 20.04 まで目指しちゃうか?を決めるために、リリースノートを参考に、デ…

Pythonパッケージマネージャー 2020年

お恥ずかしながら、Pythonプロジェクト 10個前後の私の経験の浅さに気づいた本日。先日、エントリー pip ? conda ? パッケージマネージャーを意識しておこう を書きました。が、世の中は、この2つ (pip と conda) どころの状況ではなかったことがわかりまし…

pip ? conda ? パッケージマネージャーを意識しておこう

Python使いのアタナは pip派 ? conda派? 僕はWebフレームワーク使う事が多くAnaconda使ってないので pip派 です。 (easy_install は 数年来使ってない気がするので、はしょります)一番名前をみるのが pip (pip on Pypi)。そして次が conda かなと、個人的に…

Amazon Linux 2 コンテナに AWS CLI をインストール

AWS で使うディストリビューションなら、やっぱ Amazon Linux 2だよね。LTS (長期サポート) で 2023年までサポートされてるし、 今後主流の systemd 対応 (CentOS 7 などから採用されてる、各種サービスの起動方式)だから。でも、EC2で作ると課金対象に…

日経ソフトウェア2020年5月号はPython本だね

8割方 Python 記事で埋め尽くされてて驚いた。これPython本やん。楽しかったので、僕なりの、オススメ書いてみました。日経ソフトウエア 2020年5月号【雑誌】【合計3000円以上で送料無料】価格: 1830 円楽天で詳細を見る日経ソフトウエア 2020年 5 月号発売…

Django admin カスタマイズ

久しぶりに Django admin 触ってて、あれこやカスタマイズしたときの参照情報まとめ。 admin / 管理画面 カスタマイズ 参照情報 まず読んでおこう 公式チュートリアルの中で admin について触れられています。冗長だけど、チュートリアルとしては良いデキだ…

Python が 参照する証明書ストアを掘ってみた (CentOS 版)

以前まとめた Ubuntu版 の続きになります。Redhat 6 (CentOS) 系では、証明書ストア管理には、 ca-certificates の利用がオプション状態となっているので、enableにしてから使おうね。というような内容になります。Redhat 7以降は、すでに対処後の状態になっ…

Python が 参照する証明書ストアを掘ってみた (Ubuntu 版)

Python で作ったプログラムが、あるサイトをのぞきに行けなったのだが、証明書ストアに中間証明書がなかったことが原因だった。という話の、まとめ。結論としては、Ubuntuの証明書ストア管理には、ca-certificates という仕組みが用意されているので、それを…

Django で Model の グラフ図を出力

本エントリーは、過去エントリー : Django の ER図 出力 が 2ステップで出来た - AWS / PHP / Python ちょいメモ の修正などを含めて記載しております。 Django では、Modelの定義を行う事でデータベースは定義は自動的に作成されます。django-extensions を…

mod_wsgi は pip でも提供ありなのかぁ

今回 Ubuntu 14.04 に PPA を使って Python 3.5.x を導入したところ、PPAには mod_wsgi がないことに気づき対応策を調べた。結果 pip で mod_wsgi が提供されてるといううれしい事実を発見し、無事に環境構築完了。※Ubuntu 14.04 だと オフィシャルのリポジ…

Django で view から Form オブジェクトに値を渡す : kwargs活用

args, kwargs が良くわかってなかったので苦労した話。python2.7.x と Django1.8.xでの確認です。 Formオブジェクトに渡すときには Formオブジェクトを生成するときに、GET パラメーターを渡したいと考えたが発端。あちこち参照して、一つに落ち着きました。…

forms.Model と forms.ModelForm の 違いって

Django でアプリ作ってて、ふと気になったのでまとめてみた。ざっくり、こんな感じ? 機能 Model & Form ModelForm validation 指示 Model & Form の両方で定義 Model で定義 フォーム上の項目 Form で定義 Model の定義から、ModelForm が自動決定 *対応表 …

Mac に pythonz 入れる時の OPTION 設定

以前書いた pythonz on Mac の手順が、通用しないようだったので修正方法を探ってみました。結果としては、pythonz で install する時にオプション設定をすることで解決しました。 MacOS ver 10.11.6 (OS X El Capitan) /usr/local/opt/openssl 1.0.2j (by h…

"/usr/bin/ld: cannot find -lxslt" が出て pip で lxml がインストール出来ない問題を解消

長年の問題が解決した。。。(発覚してから1年ほどで、解決に使った時間は4時間超)python パッケージは主に pip で管理しています。たまに苦労するのが gcc でコンパイルが必要なライブラリ。BeautifulSoupとセットで使いたい lxml もコンパイルが必要なラ…

Beautiful Soup 4.x では parser を明示指定しよう

python で スクレイピングなどを行うときに便利なのが BeautifulSoup (ここでは bs4 を扱っています) 。 parserを選択できる仕様になっていますが、 4.3.xまでは明示的に指定しなくても、適度に動いていました (どう動いてたかは、調べてない)。 こちら…

Mac に pythonz 入れる前にやっておくこと

direnv構築 していて遭遇した問題の原因がわかった。homebrew版のpythonが必要なのではなく、「homebrewでopensslを事前にインストールしておく必要がある」が正解だった。先に openssl を入れておかないと、pythonz で落としてきたpythonのBuild時に openss…

Pillow インストール前にやっておきたいこと

Sphinx で blockdiag + IPAフォントを使った時のTIPS。Ubuntu上で make html を行ったところ、次のエラーがでて図が出力できなかった。 ImportError: The _imagingft C module is not installed blockdiag_fontpath で、IPAフォントを指定したところエラーが…

homebrew direnv には homebrew python が必要?

(4/27 追記) homebew版 python が必要ではなく、direnv で使ってた pythonz で pythonを入れる前に homebew版 openssl が必要だったのが問題点でした。 Mac に pythonz 入れる前にやっておくこと - AWS / PHP / Python ちょいメモ - direnvをよく目にする…

Python & Django 読んでおきたいエントリー

ここ一年ほど、Python&Djangoをやってきて気になったエントリー集。けっこう好きになった気がする > Python。壮大なフレームワークなんだねと実感してきた > Django。読破したというより、読んでみたいがメインではあります。あと、Pythonメインの選定になっ…

AWS SDK for PHP 2 / 3 ドキュメント作成環境

AWS SDK for PHP 2 / 3のドキュメントって、どんなもので作られてるのかなぁと見てみた。 API AWS SDK for PHP 3.x AWS SDK for PHP | AWS SDK for PHP apigen API documentation generator for php 5.3+ NameSpaceなどにも対応したAPIドキュメント生成ツー…

mysqlclient / MySQL-python コンパイルエラー対処

Redhat w/SCL + pip で、Django/python の MySQLドライバ mysqlclient / MySQL-python がインストール出来なかった対処メモ。SCLの問題というか、Redhatのrpmパッケージの考え方の問題なのかな?# MySQL の mysqlclient と python と名前が被って若干混乱 my…

flake8 2.5.0 のエラー対処 on Ubuntu

Ubuntu に pip で flake8 を入れたら、上手く動かなかった。次の対処で上手く動作したのでメモ。 対処1 設定ファイル書くか -j0 オプション付けて並列処理をなくしたら動作。 vi ~/.config/flake8 [flake8] jobs = 1 $ cat /etc/os-release NAME="Ubuntu" VE…

Djangoアプリ全体で使う変数をコンテキストプロセッサで提供

組み込み Template とかをみてると {{ MEDIA }} とかが出てきますが、これを自前で作る方法。同じアプリを複数サイトで立ち上げる必要が出てきて、区別の為、アプリごとにユニークな名前を表示したい。ただ、それだけの用途に使いました。(Django 1.7 の ad…

dateutil で 曖昧な日付をパースする

python の dateutil ライブラリ。標準の datetime.strptime で日付を構文解析するよりも手軽にパースすることができます。2.x/3.x 両対応。今回、このようなフォーマットの日付をパースしたのですが、表記が曖昧なので、結果が揺れてしまいました。 In [1]: …

Python仮想環境ツール一覧 virtualenvwrapper, direnvとか

Pythonなど新しいバージョンがリリースされる言語は、プロジェクトや勉強に合わせたパッケージ用意したりと、1つの環境で作業しているとグチャグチャになります。 そこで1台のPC上に独立した個別環境を複数作れる、Python仮想環境を用意するツールを利用し…

self と cls とかが何か気になって調べてみた + @staticmethod

python 書いてると”ふと”気になる self と cls を調べメモ。なんで書くのかなぁという疑問が解消すると、結構気持ちよくかけるようになった気がします。書いてる人には、あたりまえ話ですいません。# 各種メソッドとかスコープについては、何も説明ないので…

Beautiful Soup 4.4.0 で extract() を使うとDOM treeが壊れる?

Python で Beautiful Soup 4.4.0 を使った時に遭遇した問題。stackoverflow でも取り上げられていて、取り敢えずは 4.3.2 に戻すことで対処しました。 python - Beautiful Soup Not able to get_text after using extract() - Stack Overflow 環境 Ubuntu 14…

urllib2.urlopen() で GET/POST を使い分け

Python の urllib2 で、ちょっとした仕様に気づいてなかったのでメモ。urlopen() の 第2引数 data を渡すと、必ずPOSTの挙動になるようです。確認環境: Mac OS X , Python 2.7.6 POST Data なにげに data を渡すと、POST methodが送られる Requestオブジェ…