http://d.hatena.ne.jp/nishiohirokazu/20120323/1332504404 最近、Webクローラクライアントを作るお仕事が増えた。WebクローラクライアントというのはHTTP(S)を介して様々なファイルをダウンロードして解析し、結果を溜め込むだけのプログラムである。ボットともいう。 クローリングの規模が大きくなると、クロール処理部と結果貯蓄部を分離する必要がある。クローラには様々なものがあるが、ものによっては特定のサーバに集中的にクローリングを行うこともある。このとき、1つのIPを使って集中的にクローリングを行うと、攻撃とみなされ一瞬でbanされてしまう。そこで、一見するとまったく関係なさそうなIPを複数確保し、それぞれにクローラーを仕掛けて走らせるのである。 結果貯蓄部は、要するにデータベースサーバであり、何を使用しても良い。クロール処理部とのやりと
K.Takata @k_takata 「Unicode文字列型が複数の内部表現をサポート」ってどういうこと?「Python 2系からの移植を容易にするため…Unicodeリテラルシンタックスも復活」これは良い。 http://t.co/LxkUP45x 2012-03-06 21:44:00
突然ですが私はPythonが好きです。でもPythonは遅いです。 何が遅いかというと、致命的なことに四則演算が遅いです。でも他の動的型付け言語でスクリプト言語と呼ばれるPerl, Ruby, Javascript も C, Javaのようなコンパイルを行う静的型付け言語に比べれば圧倒的に遅いです(近年ではJavascriptのように著しく進歩した言語もあるので必ずしもそうだとは言えませんが)。 スクリプト言語が遅い原因の一つは、変数の型が指定されていないので型のチェックを毎回行う必要があるからです。この特性があるおかげ自動的に型を変換してオーバーフローを防いでくれるというメリットもあるのですが、どうしても静的型付け言語よりは速度を出すことができません。 ならPythonのコードに型指定を加えてコンパイルしちゃえばいいじゃん!というのがCythonです。正確にはPythonライクな文法で書
2月25日(現地時間)、Pythonの各バージョンのリリース候補版が公開された。公開されたのは「2.6.8」「2.7.3」「3.1.5」「3.2.3」のリリーステスト版。いずれのバージョンも、いくつかのセキュリティフィックスが行われているという。 2.6系と3.1系では、現在セキュリティフィックスのみでバイナリの配布は行っておらず、ソースコードのみを配布している。どちらのバージョンも機能の追加や変更、新たなバグフィックスなどの公開予定はない。2.6.8は2.6.7で報告されたセキュリティ問題を、3.1.5は3.1.4で報告されたセキュリティ問題を修正している。プロジェクトでは、2.6系は2013年10月まで、3.1系は2014年6月までをセキュリティフィックスの対象期間としている。 2.7系は、2.xシリーズの最後のメジャーバージョン。メンテナンスやバグ修正を目的としたブランチで、機能の追
今日質問されて、以前Twitterで書いたのを思い出して、そして検索性が悪くて見つけ出すのに苦労した。こちらに転載しておく。詳細は気が向いたときに埋める。 オプション引数の評価タイミング Rubyではオプション引数は関数が呼ばれるたびに評価される。 def foo() print "foo!" end def bar(x=foo()) end bar #=> foo! と出力される bar #=> foo! bar #=> foo! Pythonでは関数の定義時に1回だけ評価される。 def foo(): print "foo!" def bar(x=foo()): pass #=> foo!と出力される bar() #=> 何も出力されない bar() 「引数が省略されたら今の日時」みたいな毎回評価したい場合はデフォルト値をNoneにしておいて「Noneだったら=省略されていたら」のif
みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー 一部読者から高い評価をいただき,絶版となりながら中古市場でプレミア価格がついていた拙著「みんなのPython Webアプリ編」のHTML版をお送りします。Pythonを使って,Webアプリを開発するための方法を,基本的な事柄から積み重ね式に解説した書籍をHTMLにしたのが本コンテンツです。 編集部のご厚意で作ってもらった配布用PDFをベースに作っています(PDF作成だけでなく,出版契約の解除など必要な手続きを快く受けて頂いた担当様にはとても感謝しております)。構成などは著書をベースにしていますが,HTML化する過程で少し手直ししてあります。特にPython 2.7で動かないサンプルコー
@mopemopeさんからバトンを渡されました、2011 Pythonアドベントカレンダー(Python3) 16日目担当のおもけん(@doloopwhile)です。 Q「RubyとPythonどちらが初心者向けでしょうか?」 A「Pythonは日本語情報が少ないので、Rubyがおすすめです」 質問掲示板などで、しばしば見かけるやり取りです。しかし、本当にPythonは日本語情報が少ないのでしょうか? 確かに、かつてはRubyの情報量の方が圧倒的だったでしょう。しかし、現在ではPythonも日本で広く使われ、Pythonプログラマーのブログも多数あります。少なくとも初心者がPythonを始めるのに情報不足ということはありません。 そこで、明日のPythonプログラマーのため、日本語情報を列挙しておきます。ワリと無難というか、常識的な資料ばかりです。 結局、何を読めばいいの?5つの日本語情報
PyPy is a fast, compliant alternative implementation of the Python language. 高速PythonインタプリタであるPyPyの最新版となる「PyPy 1.7」が公開された。PyPyはPython 2.7互換のPythonインタプリタ。標準のインタプリタであるCPythonと比較して高速でメモリの使用量も少ないという特徴がある。実行速度の高速化はトレースJITコンパイラを統合することで実現している。PyPy's Speed CenterにPyPyとCPythonのベンチマーク比較が掲載されており、PyPyの高速性が主張されている。 PyPy 1.7は、特にパフォーマンスの向上に注力して開発されている。ひとつ前のバージョンであるPyPy 1.6と比較して約30%の高速化が実現されており、JSONエンコーダの処理に至っては2
初めて気がつく瞬間 子どもと一緒に過ごすようになってから、初めて食べるものの反応を楽しみにしてきた。初めてのコーラとか、初めてのグミ、初めてのガリガリくんとか。明らかにおいしいものじゃなくてもいい。初めてのウニとか初めてのゴーヤとか。目を見開いて驚いたり、文字で表現し…
みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー Python MathはiPhoneやiPadで使えるPython。以前PyPadという有料のiOS用Pythonアプリを紹介したけど,今回紹介するPython Mathは無料で利用できるのが特徴。利用できるモジュールは制限されているが,Python 2.7の機能をフルに搭載したPythonの実行環境。 Math Pythonという名前からもわかる通り,数値計算に特化した作りを目指している。PyPadと違って,iPhoneでもちゃんと入力コンソールが表示されることからも,目指している方向性がわかる。メールやiTunes,Dropboxを使ってPythonのスクリプトファイルを共有できる
Merbist.com is a web that contains a collection of tutorials for making simple applications, android development, and programming languages. Most sidebar widgets on WordPress usually have the same style according to the theme. It’s okay if all the widgets that appear have the same priority or level of importance. However, in reality, some widgets are of higher importance than other widgets, so we
Python開発チームは9月4日、最新版「Python 3.2.2」をリリースした。2011年2月にリリースしたバージョン3.2系のメンテナンスアップデートとなる。 3.2.2の最大の変更点は、3.2.1でのurllib.requestモジュールのリグレッションの修正。同モジュールはHTTPでコンテンツを取得するためのモジュールで、3.2.1では指定したURLからコンテンツを取得できない問題が報告されていた。 このほか、zlib、urlparse、urlopenなど多数のモジュールを改善し、subprocessモジュールにおける改行コードの扱いも改善された。これらに加え、多数のバグが修正されている。 Python開発チームによると、2010年7月に公開した2.7以降、Python 2系はバグ修正のみとなり、新機能は3.x系向けに開発される。Python 3.2系は、3.x系の安定性を強化す
hg clone http://www.sunaga-lab.com/hgrepos/llprof # 安定版へ更新 hg update stable # 最新版へ更新 hg update
2011年7月10日、Python 3.2.1がリリースされた。Python 3.2系はPythonの最新バージョンで、文法に関する変更点はないものの、安定性の強化や新機能の追加など多数の変更が行われている。 Python 3.2.1での大きな変更点や新機能は以下のとおり。 「unittest」モジュールに多数の改良 異なるバージョンのPythonから利用されるPythonコードを管理するメカニズム「pycリポジトリディレクトリ」のサポート バージョンタグ付き動的ライブラリのサポート 並列プログラミングのための新機能追加 拡張モジュールのための安定したABI 辞書ベースのログ設定 GIL実装の全体的な改善 バイト列を処理するためのemailパッケージ拡張 「ssl」モジュールの改良 コンフィグ情報にアクセスするための「sysconfig」モジュール 「shutil」モジュールにアーカイブフ
先日会社で退職金の説明会がありました。それによると退職金の一部を確定拠出年金として自分で運用しなくてはいけないとのことで、ポートフォリオを設計する必要あります。今時は各種金融機関がポートフォリオのシミュレーターを公開していますし、Excelを使って計算するという方法もありますが、ここでは例によってpythonでポートフォリオの設計をやってみます。 実は、pythonにはnumpyやscipyといった科学計算のライブラリやcvxoptという最適化計算のライブラリがあるので、それらを利用すれば簡単かつ高速に最適なポートフォリオを計算することができます。 ちなみに、僕はファイナンス理論の専門家ではないので、ここに書いてある記述が正確であるという保証はできません。あしからず。 分散共分散行列を計算する 各投資対象のリスクと投資対象同士の相関係数が分かっているならば、分散共分散行列は行列計算で計算で
Not your computer? Use a private browsing window to sign in. Learn more about using Guest mode
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く