読者です 読者をやめる 読者になる 読者になる

akiyoko blog

akiyoko の IT技術系ブログです

ゼロからはじめる Scrapy(AWS でお手軽データ分析 その1/3)

Python で Web クローリング・スクレイピングするためのツールといえば、 今や Scrapy が真っ先に候補に上がりますよね。 Pythonでクローリング・スクレイピングに使えるライブラリいろいろ - orangain flavor 「Pythonクローリング&スクレイピング」という…

PyCharm のオレオレ最強設定

先日、「最強のPython開発環境 PyCharmのすゝめ - Qiita」という記事がホットエントリーに上がっていましたが、かくいう私も、PyCharm は Python の統合開発環境(IDE)としてまさに最強だと考えています。 www.jetbrains.com PyCharm(を含めた JetBrains …

Stripe 決済の最新事情 〜 Django と Stripe と私 〜

この投稿は 「Django Advent Calendar 2016 - Qiita」 の 4日目の記事です。 今日は クリスマス Advent Calendar の最終日ですが、4日目の記事を書いています。 というのも、自分が担当した 12/5 の「ベスト・オブ・Django本! - akiyoko blog」の前日だけ何…

PayPal 決済の最新事情 〜 Django と PayPal と私 〜

この投稿は 「Django Advent Calendar 2016 - Qiita」 の 22日目の記事です。 この記事では、「Django と PayPal REST API で In-Context Window による PayPal 決済フロー」を実装・検証します。はじめに謝罪しておきますが、「Django Advent Calendar」に…

「Python 3 エンジニア認定基礎試験」に合格しました!

この投稿は 「Python Advent Calendar 2016 - Qiita」 の 21日目の記事です。 このたび、「Python 3 エンジニア認定基礎試験」に合格することができましたー! パチパチパチ〜!! と、Python Advent Calendar で報告しようと思ったのですが、残念ながら12月…

今年の流行語大賞は「JPAP」(Jupyter / Python / Anaconda / Pyenv)〜 ゼロからはじめる Jupyter Notebook 〜

この投稿は 「jupyter notebook Advent Calendar 2016 - Qiita」 の 6日目の記事です。 今年の流行語大賞が 「JPAP(Jupyter / Python / Anaconda / Pyenv) に決まりましたね! あれ? 違うの!? といった冗談はさておき、ちょっとした統計解析をしようと…

Django ORM の SQL を出力する方法まとめ

Django ORM を使っていると、どういった SQL が発行されているか、クエリの内容を出力したいときが多々あります。SQL を出力する方法についてはいくつか方法がありますが、今回はその方法を思いつく限りピックアップしてみようと思います。 1)QuerySet の …

ゼロからはじめる Django で ECサイト構築(その3:Django Oscar の機能を調べる)

Django 製の ECパッケージの決定版とも言える Django Oscar は、公式ドキュメント によると、以下の 16 個の機能(Django App)から構成されています。 Oscar Core Apps explained — django-oscar 1.3 documentation 機能 概要 備考 Address 住所登録 配送先…

ゼロからはじめる Django で ECサイト構築(その2:Django Oscar の Sandbox サイト構築)

前回の記事「ゼロからはじめる Django で ECサイト構築(その1:ECパッケージの選定)」では、Django ベースの ECパッケージを選定し、「Django Oscar」が圧倒的人気で最有力候補であることが確認できました。 <過去記事> akiyoko.hatenablog.jp 今回、「…

ゼロからはじめる Django で ECサイト構築(その1:ECパッケージの選定)

はじめに とあるニーズがあって、Python(ほぼ Django 一択)ベースの ECパッケージを使った ECサイトを構築しようかと、昨年の10月頃から細々と調査をしていたのですが、EC-CUBE や osCommerce、Zen Cart、Magento、WordPress + WelCart など PHPベースの E…

「スマートPythonプログラミング: Pythonのより良い書き方を学ぶ」を読んだ

スマートPythonプログラミング: Pythonのより良い書き方を学ぶ[Kindle版]posted with ヨメレバもみじあめ 2016-03-12 Kindle Amazonプライム会員の特典で月一冊無料で読めるプライム対象本(正確には「Kindleオーナー ライブラリー」の対象本)を眺めていた…

NumPy, SciPy を利用するために Python 2系の Anaconda を、pyenv を使ってインストールする

はじめに Anaconda (アナコンダ) とは Anaconda は、Continuum Analytics 社によって提供されている、Python 本体に加え、科学技術、数学、エンジニアリング、データ分析など、よく利用される Python パッケージ(2016 年 2 月時点で 400 以上)を一括でイン…

Mezzanine プロジェクトの開発環境を PyCharm で設定する

はじめに 以前に「見よ!これが Python製の WordPress風フルスタックCMSフレームワーク「Mezzanine(メザニン)」だ!」という記事で、Python製の WordPress風フルスタックCMSフレームワーク「Mezzanine」を紹介しましたが、今回は、その Mezzanine プロジェ…

PyCharm のデータベースツールが最強。ER図も簡単に書き出せるよ

はじめに Django アプリを開発するのに、Mac 版 PyCharm を使っています。PyCharm のデータベースツールを使うと、レコードの内容をテーブル表示、コンソールからSQL実行など、Sequel Pro で出来ることはほぼ代替できるし、ER図も書き出せてすごく便利です。…

見よ!これが Python製の WordPress風フルスタックCMSフレームワーク「Mezzanine(メザニン)」だ!

この投稿は 「Python Advent Calendar 2015 - Qiita」 の 23日目の記事です。 煽っておきながら先に言い訳しておきますが、「Mezzanine(メザニン)」は WordPress公式 が作ったものでもサポートしているものではありません。しかしながら、Mezzanine の 概…

mp4動画ファイルのトランスコードを Python for Lambda で自動化

この投稿は 「今年もやるよ!AWS Lambda縛り Advent Calendar 2015 - Qiita」 の 3日目の記事です。 1、2、3、ラムダーーーーーーー!! 12/3 の記事ということではしゃいでしまいました。 とっとと始めます。。 はじめに これまで、「Boto3 で Elastic Tran…

はじめての Python for Lambda (Python Functions)

この投稿は 「今年もやるよ!AWS Lambda縛り Advent Calendar 2015 - Qiita」 の 2日目の記事です。 はじめに 10月の re:Invent 2015 にて AWS Lambda の大幅アップデートが発表され、Node.js と Java のみが対応していた Lambda Function が Python に対応…

Python (Boto3) で Amazon SNS (Simple Notification Service) を操作して、メール通知をおこなう

はじめに AWS で、ある決まったメールアドレスに何らかの通知をおこなう際には、Amazon SNS (Simple Notification Service) を使うのが簡単です。 何かを常にチェックして、ある条件が発生したらメールを送る、というのをやりたいというのはよくあること。し…

Python (Boto3) で Amazon Elastic Transcoder を操作して、動画ファイルをトランスコードする

はじめに re:Invent 2015 で発表された「Python for Lambda」(Python Functions) により、Pythonコードが Lambda 上で実行できるようになりました。<参考> AWS Lambda Update – Python, VPC, Increased Function Duration, Scheduling, and More | AWS Off…

PyCharm で Djangoプロジェクトの開発環境を設定する

Mac (OSX Yosemite) に PyCharm Professional Edition をインストールして、Django プロジェクト開発環境の設定をします。 やりたいこと Mac (OSX Yosemite) に PyCharm Professional Edition をインストール 各種初期設定 GitHub から Django プロジェクト…

Amazon CloudFront で HLS動画のプライベートオンデマンド配信を行う方法

1. はじめに Aamazon Web Services(AWS)でプライベート動画のオンデマンド配信をするには、Amazon CloudFront の「署名付きURL(Signed URL)」という機能を使い、一定期間のみ有効となるワンタイムの URL を発行することで実現可能です。 プライベートオ…

Boto を使って S3 にアップロードしたファイルを取得する

1. はじめに Python のプログラムコードから(S3 や CloudFront などの)AWS のサービスを利用する場合には、Boto(あるいは次期バージョンの Boto3)を使います。 Boto boto: A Python interface to Amazon Web Services — boto v2.38.0Boto3 AWS SDK for P…

「統計処理及び機械学習に基づくデータマイニング勉強会 #03」に参加してきました

タイトル 統計処理及び機械学習に基づくデータマイニング勉強会 #03 (2015/04/09 19:00〜)統計処理及び機械学習に基づくデータマイニング勉強会 #03 - connpass (2015.4.9) 主催 梅染充男(@dr4caena) 会場 東京都渋谷区恵比寿南3-5-7 代官山DGビル9F 株…

「統計処理及び機械学習に基づくデータマイニング勉強会 #02」に参加してきました

タイトル 統計処理及び機械学習に基づくデータマイニング勉強会 #02 (2015/03/12 19:00〜)統計処理及び機械学習に基づくデータマイニング勉強会 #02 - connpass (2015.3.12) 主催 梅染充男(@dr4caena) 会場 東京都渋谷区恵比寿南3-5-7 代官山DGビル9F 株…

「統計処理及び機械学習に基づくデータマイニング勉強会 #01」に参加してきました

タイトル 統計処理及び機械学習に基づくデータマイニング勉強会 #01 (2015/02/26 19:00〜) 統計処理及び機械学習に基づくデータマイニング勉強会 #01 - connpass (2015.2.26) 主催 梅染充男(@dr4caena) 会場 東京都渋谷区恵比寿南3-5-7 代官山DGビル9F …

Python で MagicMock を使う

MagicMock は mock.Mock のサブクラスで、薄いラッパーです。 >>> from mock import Mock, MagicMock >>> issubclass(MagicMock, Mock) True >>> list(set(dir(MagicMock)) - set(dir(Mock))) ['_mock_set_magics'] MagicMock を使えば、クラスだろうがオブ…

Python, Django 界隈の単体テスト事情(unittest / nose / django-nose)

前々から、Python, Django 界隈の単体テスト事情をまとめたいと思っていたのですが、こんな素敵なまとめ記事を見つけました。 Python用のユニットテストツールまとめ | TRIVIAL TECHNOLOGIES 4 @ats のイクメン日記 この記事では、unittest, unittest2, doct…

PDB QUEST ~ pdb のショートカットはドラクエ風に覚えよう ~

この投稿は 「Python Advent Calendar 2014 - Qiita」 の 17日目の記事です。 Python のコードをデバッグするには、Python標準のデバッガである「pdb」モジュールを使いますが、使い方(ショートカット)がなかなか覚えられず、いつもネットで探してしまうこ…

Python でリストのソートまとめ

今回は、Python でリストをソートするやり方をまとめてみます。 環境 Python 2.7 で動作確認 list.sort() でソート 破壊的なメソッドなので、元のリストオブジェクトの順序を入れ替えてしまいます。 あまり使うことは少ないのではないでしょうか。 次に紹介…

バージョン1.7 になる前に Django の再入門

Django は、 DRY (Don't Repeat Yourself) の精神 Python 製の MVC フレームワーク(All-in-One & Pluggable) BSDライセンスの OSS O/R マッピング API 強力なテンプレートエンジン ユーザ認証・セッション 国際化 などの特徴を備えた Webフレームワークで…

Python でメール送受信(Gmail で SMTP と IMAP を使う場合)

Python でメールの送受信をするちょっとしたクライアントが欲しかったのですが、これぞ!というサンプルが無かったり、Python 2.6.2以前の書き方だったりしたので、自作してみました。 なお、「Python 2.6.2以前の書き方」というのは、こういうことです。 メ…

Python でシンプルなテーブルを(PrettyTableを使わずに)出力する方法

Python で、 +--------------+----------+----------+ | Header 1 | Header 2 | Header 3 | +--------------+----------+----------+ | aaa | bbb | ccc | | aaaaaaaaaaaa | bb | ccccc | | a | b | | +--------------+----------+----------+ こんな感じの…

Python で Selenium WebDriver を使ったブラウザテストをする方法

ブラウザテストツールの代表格と言えば「Selenium」ですが、実は、6年前にも一度調査したことがあったのです。しかしながらその当時は結局、業務で採用されることはありませんでした。現在の「Selenium2」は、「WebDriver」というツールが統合されるなど、当…

Python で簡易サーバを立てる

Windowsで、ちょっとした HTMLファイルの見栄えをブラウザでチェックしたい場合、わざわざ Apacheが起動した物理サーバや仮想マシンにファイルを転送したり、XAMPP を起動するまでもないんだよなぁ、というケースがありますよね。 実は、そういったニーズに…

Amazon EC2インスタンスのデスクトップ環境を操作する方法(Ubuntu Server から X window を飛ばす)

「Xを飛ばす」というのは、Windowsでいうところの「リモートデスクトップ接続」のように、Linuxのデスクトップ環境を別マシンから操作することを指します。いくつかやり方があるようですが、今回は、Linuxサーバ側に「vnc4server」を起動させて、Windowsから…

Ubuntu+virtualenv環境で Djangoアプリケーションを作ってみる

やりたいこと Ubuntu に virtualenv環境を作る(virtualenvwrapperを使用) Djangoをインストール virtualenv環境で Djangoアプリケーションを作る 環境 Ubuntu Server 12.04.4 LTS(on VMware Player) Python 2.7.3 pip 未インストール(Ubuntuインストー…

Pythonで棒グラフ

今回は、NumPy と matplotlibライブラリで棒グラフを描いてみます。シチュエーションとしては、あるテストの国ごとの平均点を棒グラフにしてみたいと思います。で、Excel上に、スコアのデータと国籍のデータが下方向に並んでいるとします。 USA 42 Denmark 4…

Pythonで円グラフ

今回は、matplotlibライブラリを使って、円グラフを描きたいと思います。例として、参加者の国籍ごとの人数を表示する、という用途で使う前提で考えます。 Excelのあるセル(D10)から下方向に、参加者の国籍データが並んでいるものとします。 USA Denmark J…

Pythonで単回帰直線

今回は「Pythonで散布図」の続きで、散布図に使った二系統のデータから、最小二乗法で求めた単回帰直線を描いてみたいと思います。単回帰直線を求めるためのライブラリ SciPy は、前回の「Mac に SciPy をインストール」をみてインストールしてください。 単…

Mac に SciPy をインストール

Pythonで統計解析シリーズの続きです。単回帰分析などの統計解析をするときは、SciPy を使うのが簡単です。しかし、いざ Mac に SciPy をインストールしようとしたら、なかなかうまく行かず。。 同じ悩みを抱えている人も多かったのですが、これぞ!という正…

Pythonで散布図

今回は、Pythonで散布図を描こうと思います。 内容的には「Pythonでヒストグラム」の続編のような形になっていますのでご注意を。 相関係数を求める シチュエーションとしては、ExcelのセルF10から下にデータ(テストの点数)がずらっと並んでいて、それと対…

Pythonでヒストグラム

前回「PythonでExcel操作」の続きで、今回は、Excelから取得したデータを使ってPythonでヒストグラムを描こうと思います。 matplotlib のインストール グラフ描画のライブラリには、「matplotlib」を使います。 $ sudo easy_install matplotlib matplotlib 1…

PythonでExcel操作

Pythonで Excelからデータを抜き出すサンプルを作ってみました。 実行環境は、Mac OS X 10.7.5、Python 2.7.1 です。 python-excel のインストール Excel操作のライブラリとして、「python-excel」を使います。 python-excel は xlrd, xlwt, xlutilsというパ…

Pythonのself

Pythonでインスタンスメソッドというのは,インスタンスにバウンド(ヒモ付?束縛?)されている関数に過ぎないhttp://blog.livedoor.jp/odaxsen/archives/1596542.html これまでぼんやりとしか理解できていなかった「Pythonのself」について、上のエントリー…