タグ

2011年4月8日のブックマーク (50件)

  • CentOS に etckeeper をインストール - miauのブログ

    etckeeper は /etc 配下のファイルを VCS で自動管理するためのプログラムで、Ubuntu なんかでは sudo apt-get install etckeeper とやるだけでインストールできるわけですが。(概要は Ubuntu Weekly Recipe:第58回 ファイルのバージョンを管理する|gihyo.jp … 技術評論社 あたりをご覧ください。) CentOS では少し手順が必要だったのでメモです。ちなみにバージョンは CentOS 5.3。 git のインストール etckeeper の利用には hg/git/bzr/darcs のような DVCS が必要になるわけですが、etckeeper 自体が Git で管理されているので、今回は git を入れることにします。後述しますが、git 1.5.4 以降をいれておいたほうが無難です。 CentOS/Gitのイ

    CentOS に etckeeper をインストール - miauのブログ
  • yum 実行時に「Error performing checksum」エラー - miauのブログ

    CentOS に etckeeper をインストール - miauの避難所 この中で kernel.org の yum リポジトリから git を入れるくだりがありましたが、いつからかこんなエラーになってました。 [root@localhost ~]# yum install git-1.5.6.1-1 --enablerepo=rpmforge Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * addons: ftp.yz.yamagata-u.ac.jp * base: ftp.yz.yamagata-u.ac.jp * extras: ftp.yz.yamagata-u.ac.jp * rpmforge: apt.sw.be * updates: ftp.yz.yamagata-u.a

    yum 実行時に「Error performing checksum」エラー - miauのブログ
  • CentOS5でRPMforgeを使う - ギリギリギリギリジンジン ギリギリギリジンジンジン

    2012.6.14更新版 CentOS5.8でRPMforgeを使う - ギリギリギリギリジンジン ギリギリギリジンジンジン - CentOS5.4で、rpmforge-release 0.3.6を使うとエラーになるので0.5.1を使うように修正。 - RPMforge http://rpmrepo.org/RPMforge 手順 http://wiki.centos.org/AdditionalResources/Repositories/RPMForge rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt wget http://apt.sw.be/redhat/el5/en/x86_64/RPMS.dag/rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm rpm -

    CentOS5でRPMforgeを使う - ギリギリギリギリジンジン ギリギリギリジンジンジン
    inouetakuya
    inouetakuya 2011/04/08
    CentOS5.4で、rpmforge-release 0.3.6を使うとエラーになるので0.5.1を使うように修正
  • Git と GitHub を体験しながら身につける勉強会行ってきた - 予定は未定Blog版

    9/18(土) 15:30~ GitGitHubを体験しながら身につける勉強会(名古屋) : ATND 行ってきました。 なんかいろいろと話すことになったんですけど、あの場で言いそびれたこととか、もっとこう説明してればよかったなぁ、って部分の補足も兼ねたエントリです。 長文注意。 ショートカット git add の話 git add -p/git reset -p の話 リビジョン番号がない話 ブランチの話 git-completion の話、__git_ps1 の話 コミットの指定の話 reset の話 rebase と merge の話 公開したものの rebase の話 stash の話 TortoiseGit、HG、SVNのはなし 全体を通して git add の話 Git と SVN では、add に限らず、同じ名前のサブコマンドでも意味が異なるものがいくつかあります。 その中

    Git と GitHub を体験しながら身につける勉強会行ってきた - 予定は未定Blog版
  • へ〜たのめも:Hadoop と RDBMS の性能を比較してみた。という論文。の感想。の翻訳。 - livedoor Blog(ブログ)

    2009年04月19日 Hadoop と RDBMS の性能を比較してみた。という論文。の感想。の翻訳。 Stonebraker, DeWitt, et al. compare MapReduce to DBMS Map-Reduce (Hadoop)と Parallel DBMS (Vertica と DBMS-X) の性能を比較したところ、おおむね DB の方が性能がよく、ケースによっては 6.5倍も性能差があるという実験結果が、SIGMOD09 で発表されたらしい。原論文はここから PDF でダウンロードできる。 以下は DBMS2 というブログに書かれた、この論文を読んだ人の感想の翻訳。 Stonebraker, DeWitt, et al. MapReduce と DBMS の比較 5人の共著者(主筆者は Andy Pavlo っぽい)とともに、Map-Reduce 嫌いで知られ

    inouetakuya
    inouetakuya 2011/04/08
    ふむ。原論文にも書いてあるけど、Map-Reduce に傾倒せずに、ちゃんと両方の方式を検討してから決めなさいってことだな。
  • Hadoopのインストールとサンプルプログラムの実行

    前回はGoogleの基盤技術とそれに対応するオープンソースソフトウェアとして、Hadoop & hBaseを紹介しました(図1 参照)。今回はHadoopを1台にインストールし、サンプルプログラムを動かします。次にHDFSとMapReduceのアーキテクチャを解説します。最後にサンプルプログラムのソースコードを解説します。 2. Hadoopの概要 Hadoopは主にYahoo! Inc.のDoug Cutting氏によって開発が進められているオープンソースソフトウェアで、GoogleFileSystemMapReduceというGoogleの基盤技術のオープンソース実装です。Hadoopという名前は開発者の子供が持っている黄色い象のぬいぐるみの名前に由来しています。HadoopはHDFS(Hadoop Distributed File System)、Hadoop MapReduce F

    Hadoopのインストールとサンプルプログラムの実行
  • Hadoop、hBaseで構築する大規模分散データ処理システム

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    Hadoop、hBaseで構築する大規模分散データ処理システム
  • 認証データベースへのHBase/Hadoopの適用

    1. はじめに HP IceWall SSO は、日ヒューレット・パッカード株式会社が日で開発した Webシングルサインオン製品です。1997年の販売開始より、合計4000万以上のユーザーライセンスが販売されており、日国内の市場占有率も1位となっています*1。大企業のミッションクリティカルなシステムの認証基盤としても使用されている非常に実績の高い製品です。 連載では、HP IceWall SSOの最新機能を軸とし、クラウド環境における認証システムへの新技術の適用、クラウドとの認証連携、そしてクラウドの活用事例を3回にわたり紹介していきたいと思います。 第1回はHP IceWall SSOにおける認証データベースへのHBase/Hadoopの適用に関して紹介します。 HBaseはApache Software Foundation(以下ASF)によってトップレベルプロジェクトの位置づ

  • HBaseの開発者がHadoop、BigTable、分散データベースについて語る

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    HBaseの開発者がHadoop、BigTable、分散データベースについて語る
    inouetakuya
    inouetakuya 2011/04/08
    ちょうどBigtableが、Googleファイルシステムによって提供される分散データストレージを活用しているように、HBaseはBigtableライクな機能をHadoop(source)の上で提供しています。HBaseはApacheにおいて、Hadoopのサブプロジェクトです
  • Hadoopで、かんたん分散処理 (Yahoo! JAPAN Tech Blog)

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、地域サービス事業部の吉田一星です。 今回は、Hadoopについて、Yahoo! JAPANでの実際の使用例を交えながら書きたいと思います。Hadoopとは、大量のデータを手軽に複数のマシンに分散して処理できるオープンソースのプラットフォームです。 複数のマシンへの分散処理は、プロセス間通信や、障害時への対応などを考えなければならず、プログラマにとって敷居が高いものですが、 Hadoopはそういった面倒くさい分散処理を一手に引き受けてくれます。 1台では処理にかなり時間がかかるような大量のデータも、複数マシンに分散させることで、驚くべきスピードで処理を行うことができます。 例えば、今まで1台でやっていた、あるログ集計処理

    Hadoopで、かんたん分散処理 (Yahoo! JAPAN Tech Blog)
  • Hadoopがスケール・アウトする仕組み

    前回の記事では、Hadoopが膨大なデータをバッチ処理するための「インフラ」としての性質を備えていること、情報爆発時代の新たなインフラとして普及しつつあることを説明しました。その中で、情報爆発時代に必要とされるインフラは、「スケール・アウトが可能であること」という条件を備えていなければならないことを示しました。サーバーの台数を増やすことで容易にシステムの処理性能が増やせることは、Hadoopの重要な特徴です。今回は、Hadoopがどのようにしてスケール・アウトを可能にしているかを、「分散ファイル・システム」と「MapReduceフレームワーク」の2つの観点から解説します。 スケール・アウトとは? コンピュータ・システムを新たに構築するときは、必ず「運用」のことを考えておく必要があります。システム・トラブルが発生した場合の対応策を決めたり、将来の仕様変更に備えてプログラムに拡張性を持たせたり

  • NTTデータのHadoop報告書がすごかった - 科学と非科学の迷宮

    業界トップ のエンタープライズ Hadoop 企業 Cloudera に入社しました http://www.cloudera.co.jp/ 今年の6月に、「平成21年度 産学連携ソフトウェア工学実践事業報告書」というドキュメント群が経産省から公表されました。 そのうちの一つに、NTTデータに委託されたHadoopに関する実証実験の報告書がありましたので、今更ながら読んでみることにしました。 Hadoop界隈の人はもうみんなとっくに読んでるのかもしれませんけど。 http://www.meti.go.jp/policy/mono_info_service/joho/downloadfiles/2010software_research/clou_dist_software.pdf 「高信頼クラウド実現用ソフトウェア開発(分散制御処理技術等に係るデータセンター高信頼化に向けた実証事業)」という

    NTTデータのHadoop報告書がすごかった - 科学と非科学の迷宮
    inouetakuya
    inouetakuya 2011/04/08
    Hadoopの入門書や入門ページには書かれてないような構築・運用・チューニングの話が盛りだくさんなのです。
  • グーグル発「Hadoop」、日本企業も利用へ

    Hadoopは、グーグルが検索エンジン用に開発したバッチ処理システムを基に開発された、オープンソースソフトだ。グーグルが開発した分散ファイルシステム「Google File System(GFS)」を模した「Hadoop Distributed File System(HD FS)」と、データ処理機構「MapReduce」を模した「Hadoop MapReduce」で構成する。 米国では米VISAや米JPモルガン・チェースのような大手金融機関が、バッチ処理にHadoopを使用する。 そのHadoopがいよいよ、日企業でも使われ始めた。例えば楽天は、ある商品に対するお薦め商品をリストアップする「レコメンド処理」にHadoopを使用する。NTTデータは、全国の渋滞情報をリアルタイムに可視化するシステムの構築にHadoopを採用した。三菱UFJインフォメーションテクノロジーもHadoopを使っ

    グーグル発「Hadoop」、日本企業も利用へ
    inouetakuya
    inouetakuya 2011/04/08
    MapReduceの各処理はそれぞれ独立して動作するため、サーバーの台数を増やしたことに比例して、処理性能が向上する。
  • カヤックから5つの重要なお知らせ | 面白法人カヤック

    第三者割当増資実施 2011年4月1日を払込期日として、株式会社サイバーエージェント社:東京都渋谷区、代表取締役社長CEO:藤田晋)、株式会社スタートトゥデイ(社:千葉県千葉市、代表取締役社長CEO前澤友作)、株式会社グロービス・キャピタル・パートナーズ(社:東京都千代田区、代表パートナー:堀義人)の運営するファンドを引受先とする総額3億5000万円の第三者割当増資を実施いたしました。

  • .gitconfigに設定してるaliasなどのまとめ - ( ꒪⌓꒪) ゆるよろ日記

    22:56 @thinca さんからの指摘を追記 @yuroyoro あとお節介ですが、n個前とdiffなら HEAD^ より HEAD~ の方がいいと思いますよ。両者では若干意味が違います。~なら HEAD~3 と数字が書けるのも利点です。あと個人的にはwhatchangedよりlog --statの方が見やすくて好きです。 2010-10-08 22:30:52 via Tween to @yuroyoro @yuroyoro URL このgitconfigの記事に関して質問なのですが、core.excludesfile は $HOME で動きますか?以前試した時ダメで、~/ なら動いたのでこちらを使ってるんですが。 2010-10-08 22:20:49 via Tween to @yuroyoro 「そんな.gitconfigで大丈夫か?」 そんなわけで、仕事でもモリンモリンにgi

  • 自然言語処理は Python がいちばん - 武蔵野日記

    現在大学1年生の人で3年後には NAIST に (というか松研に) 来たいという人から「どんなプログラミング言語やっておくといいですか」と質問されたりするのだが、なかなか答えるのは難しい。自分は PerlPython がメインでときどき C++/C# を使ったりするのだが、どれが一番いいかはなんとも言えないので、自然言語処理以外に転向する可能性も考えると、C とか C++ とか Java とか(授業でそちらをやるのであれば)を最初の武器に選んだ方がいいのでは、と思ってはいる。 そんなこんなで最近 Hal Daume III (機械学習を用いた自然言語処理では非常に有名な人) のブログで Language of Choice というタイムリーなエントリーが出ていたので、紹介すると、「それなりに大きな自然言語処理のプロジェクトでどのプログラミング言語を使うのか」というアンケート結果が出

    自然言語処理は Python がいちばん - 武蔵野日記
  • Python - Wikipedia

    Pythonは1991年にグイド・ヴァン・ロッサムにより開発されたプログラミング言語である。 最初にリリースされたPythonの設計哲学は、ホワイトスペース(オフサイドルール)の顕著な使用によってコードの可読性を重視している。その言語構成とオブジェクト指向のアプローチは、プログラマが小規模なプロジェクトから大規模なプロジェクトまで、明確で論理的なコードを書くのを支援することを目的としている。 Pythonは動的に型付けされていて、ガベージコレクションされている。構造化(特に手続き型)、オブジェクト指向、関数型プログラミングを含む複数のプログラミングパラダイムをサポートしている。Pythonは、その包括的な標準ライブラリのため、しばしば「バッテリーを含む」言語と表現されている[† 1]。 Pythonのインタプリタは多くのOSに対応している。プログラマーのグローバルコミュニティは、自由かつオ

  • Perl, Python, Ruby の比較

    コードの書きやすさは3つともそれほど違わないように思えます。ただ、読みやすさはダントツで Python が 優れています。Ruby はまずまずで、Perl は書き手の技量による部分が大きいのですが、 一般的には "読めない" コードになりがちです。 現在の人気を無視して、言語そのもののよしあしを考えると、 PythonRuby はほぼ互角でしょう。しかし、今のところ Python の方が、 実行速度が速く、ライブラリが豊富なので、とりあえず Python を使うことにします。 また、Python には対話モードがあるのも Lisp に慣れた人間にとってはありがたいです。 Ruby は今後の健闘に期待します。 5. おわりに 以上 Perl, Python, Ruby の比較をつれづれと書きましたがご参考になりましたでしょうか? 結論は、 Python, RubyPerl に比べ

  • Gitと一緒にCakePHPを楽しむ – CakePHP Advent Calendar 2010 6日目

    これはCakePHP Advent Calendar 2010の6日目の記事です。 CakePHP Advent Calendarって何?という方はこちらへ。 CakePHP Advent Calendar 2010を開催! CakePHPに関するtipsを1日1つ、順番に紹介するということなので、私はGitとCakePHPの活用について書きます。 恐らく、これはCakePHPに限らずあらゆるフレームワークで有効なtipsです。 CakePHPを初めとするフレームワークを長く使っていると、色々と面倒なことが起きてきます。 フレームワークのバージョンアップ 外部ライブラリのバージョンアップ 複数プロジェクトにおけるコードの共通化 “フレームワークのバージョンアップ“は重要です。 先日、こんなバグも発見されましたしね。 CakePHPPHPコード実行の脆弱性を使ってCakePHPを焦が

  • jmblog.jp - ソースコードを表示させるのに使うべきHTMLタグは?

    ソースコードをWebページで表示させるために、どんなHTMLを書いてますか?私はこれまで、<pre>…</pre> を使っていました。<code>…</code> というタグは知っていましたが、これだと半角スペースや改行がうまく反映されていない、という理由で使っていなかったのです。 が、Web標準の教科書というを読んで、目からうろこが落ちました。 (pre要素の解説で) pre要素は、code要素と組み合わせてスクリプト言語やプログラミング言語のソースコードを示すのに使うのが一般的である。 (code要素、var要素、samp要素、kbd要素の解説で) コンピュータに特有のテキストを定義するには、次の4つの要素を使用する。 (略) これらはインライン要素であり、インライン要素やテキストを含むことができる。 そうだったのかー!code要素はインライン要素なので、半角スペースや改行が反映

  • SnowLeopardでGAE(Python 2.5)開発環境をつくるまでを走り書き - matuダイアリー

    最近、Google App Engine(以下GAE)で開発*1をやっているのですが、SnowLeopardにプリインストールされているPythonのバージョンは2.6で、GAEでのアプリ開発にはPython 2.5が必要なので、Python 2.5をインストールしました。 以下、やったことのログです。(走り書きですみません) Xcodeのインストール Macの統合開発環境であるXcodeをインストールします。OSのインストールメディアから。 MacPortsのインストール MacでUNIXツールを手軽に利用できるようになるパッケージ管理システムであるMacPortsをインストールします。こちらから最新版をインストール。 Python 2.5をインストール Python 2.5をインストールします。同時に使用するPythonのバージョンを手軽に切り替えてくれるツールであるpython_se

    SnowLeopardでGAE(Python 2.5)開発環境をつくるまでを走り書き - matuダイアリー
  • Python アプリケーションの開発 - NetBeans IDE チュートリアル

    アプリケーションの概要 このチュートリアルでは、ホッケーチームを管理するアプリケーションを開発します。選手のリスト、その希望ポジション、および現在の状態 (補欠選手か正選手か) を外部ファイルに追加するコマンド行アプリケーションです。アプリケーションが完了したら、Python を使用してファイルの内容を表示したり、レコードを更新したりできます。このチュートリアルでは、ファイルの入出力は扱いますが、データベースの詳細については説明しません。 設定 このチュートリアルの手順を実行するには、NetBeans IDE for Python のアーリーアクセス (EA) 版のダウンロードが必要です。 注: NetBeans IDE 6.8 を使用している場合、次の手順に従って、Beta アップデートセンターから Python プラグインをインストールできます。 IDE のメインメニューで「ツール」>

  • おっさんにも解るPython

    おっさんにも、このブログを読めば、GTKによるLinux上でのGUIプログラミングを可能にすることを目的に書かれています。 別にPythonエキスパートを養成するものではありません。(笑) おっさんなので、適当にそれらしくでっち上げられれば、それでいい、というポリシーでゆるく書かれています。 生暖かい目で見守ってください。 今回は、前回Gladeで作成したTreeViewを使ったリスト表示の画面に、プログラムからアイテムを追加する、というネタをやります。 っても、ネタってほどのモノじゃないんですが、実はこれが。(笑) 激、シンプル。 追加したコードは以下の内容になりますかね。 def on_btAdd_clicked(self,widget): tbEdit = self.wTree.get_object("tbEdit") self.listStore.append([len(self.

  • Google App EngineとPythonでの素直な開発環境の構築(TDDができるように) - Masatomo Nakano Blog

    追記: 続編的なものを書いた。 今年は色々なことに手を出してみよう、ってことで少し前からGoogle App Engine(以下GAE)で、あるモノを作っている。モノ自体は近いうちに公表できると思う。 基的に、Pythonと標準っぽいフレームワークだけでやってみている。作っているものがそれなりにシンプルなのと(だからこそGAE!)、GAEでそれなりの規模の開発をするのが自分自身初めてということもあり、あまり色々なレイヤーを重ねて手こずりたくなかった、ってのがその理由。 ただ、GAE初心者なので、「いやいやそれは今時ないよ」「XXの方が100倍いい」とかあったら教えてくれると嬉しいので今のところの環境を書いておくことにした。今ならスイッチ可能。 今作っているものがJSONファイルを入出力するだけのものなので、HTML生成パートみたいのはない。 1. フレームワーク 上にも書いたように、今回

    inouetakuya
    inouetakuya 2011/04/08
    defaultコマンドで /usr/bin/python の指すバージョンを変えられるようだけど、他に影響を与えたくなかったので、今回は、コマンドラインから実行するpython関連のコマンドは2.5を付けて実行(例: easy_install-2.5) / GoogleAppEngineLauncher
  • モダンなPythonの開発環境の構築方法 — TRIVIAL TECHNOLOGIES 2.0

    みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー インストール Windows以外の多くのプラットフォームではすでにPythonが入っている。バージョンを調べて,使いたいバージョンより古いならインストーラやパッケージを使ってインストール。パッケージは「〜devel」をインストールしておく。 easy_installのインストール easy_installは標準ライブラリに含まれていないサードパーティモジュールをインストールする時に便利なので,入れとく。 ここからez_setup.pyをダウンロード,Pythonのスクリプトとして実行すると,自動的にコマンドがインストールされる。 $ easy_install pachage_name

    inouetakuya
    inouetakuya 2011/04/08
    Google App Engine は未だに Python 2.5 を使う
  • 第3回 スクレイピングにチャレンジ!

    これまで,Pythonによる初めてのコーディングと,RDB(リレーショナル・データベース)をオブジェクトとして扱うデータベース・プログラミングについて簡単に紹介しました。今回は,Pythonを使ってWebの情報を自動取得するスクレイピング・プログラム(WebサイトのHTMLを抽出・解析して情報を取得)の作成にチャレンジしてみましょう。 ところで前回までは,WindowsからLinux(Ubuntu)にリモートログインして開発をおこなっていました。今回からは一歩踏み込んで,クライアントにMacを採用して格的な開発の環境を用意してみることにします。 Macを利用する意義 開発環境をMacにするメリットは以下の通りです。 Mac OS XはUNIXであり,UNIX/Linux環境はスクリプト言語の開発に適している 最新のPythonがはじめからインストールされている EmacsやVimなど強力

    第3回 スクレイピングにチャレンジ!
  • Pythonでスクレイピングしたい - Code is beautiful

    例えば、SJISのサイトをスクレイピングして、UTF-8で出力とか文字コード周りが全然分かってなくてハマった。 どうもPython内部ではUnicodeで処理してるので、一旦Unicodeに変換(decode)してから、UTF-8に変換(encode)するという事らしい。 UnicodeとUTF-8を一緒にしてた事がマズかったと。 #!/usr/local/bin/python # -*- coding: utf-8 -*- import urllib2 url = "http://hoge.hoge" contents = urllib2.urlopen(url, "rb").read().decode("shift_jis").encode("utf-8")なるほどなぁ。

    Pythonでスクレイピングしたい - Code is beautiful
  • 正規表現モジュールからはじめるスクレイピング - YAMAGUCHI::weblog

    はじめに こんにちは、Python界のつけ麺大王@麻布十番です。先日はpyqueryを使ってWebでスクレイピングをする方法をご紹介いたしましたが、そもそも昨今のプログラミング言語ではたいてい正規表現が使えるようになっていまして、単純なものならこれを使ってスクレイピングするのもいいですよねー、っつー話。ほんの10分やってみればわかると思います。 リンク 全部標準ドキュメントの正規表現操作のところに載ってます。日語ドキュメントはローカルに置いときましょう。 7.2. re — 正規表現操作 — Python 2.7ja1 documentation 確認したい点 パターンマッチさせようとしている文字列はstrかUnicodeか パターンもUnicodeにしなければいけなくなる re.UNICODEを付ける VERBOSEを使うのかどうか 長すぎるパターンでは積極的に使うべき エスケープすべ

    正規表現モジュールからはじめるスクレイピング - YAMAGUCHI::weblog
  • はてなブログ | 無料ブログを作成しよう

    オーベルジーヌ実レポ べ物の鼻塩塩(未だに通じるのかな) オーベルジーヌというカレーをご存知だろうか 都内にあるデリバリー専門のカレー屋で、 ロケ弁などで大人気の格欧風カレーが楽しめるらしい いいな〜 いいな〜オブザイヤー 都内の奴らはこんな良いモンってんのか 許せねえよ………

    はてなブログ | 無料ブログを作成しよう
  • HTMLを解析(スクレイピング)する: Python Tips

    HTML解析に使用するライブラリ ・BeautifulSoup.py Pure-Python で書かれている。大きなページだと処理速度は遅い。 ・HTMLの解析は、やはり、XPathで行うのが簡単でラク。 XPath が使える主なHTML解析ライブラリには、 lxml、libxml2 の2つがある。 XPath 言語仕様 1. lxmlを使った例 finance.yahoo.comから、グーグルの最新株価を取得する import urllib import lxml.html fd = urllib.urlopen('http://finance.yahoo.com/q?s=GOOG') s = fd.read().decode('utf-8') xRoot = lxml.html.fromstring(s) path = '''string( //tr[ th/text() = 'Las

  • Python で Mechanize と BeautifulSoup を使用して SNS をスクレイピングする。

    俺が普段使っているSNSの一つに ファンタジーアースSNS というのがあって、これは同名のゲーム(要約すると50人1チームで戦争するゲームです)と連動して戦争の成績が見れたり各国毎の統計が見れたりとなかなか便利な仕組みになってます。 ただ、各戦争毎に表示される個人成績や召還数といった値は各戦争結果ページでしか得られず、ゲーム内で参照できる戦績表示では今まで行った全ての戦争に対して行われる為、直近10件の戦争が見たいなどという場合には手で計算するとかしないといけなくて大変不便です。 というわけで SNSスクレイピングして各値を拾って表示するスクリプトを組みました。全戦争読み込んだり平均値出したりとかは全然作りこんでないのでその辺は勝手に改良すると良いです。もっともこのSNSは大変重いのでスクリプトを実行する場合はアクセスの間隔あけるとかしてサーバに負荷が掛からない様に御願いします。 必要

    Python で Mechanize と BeautifulSoup を使用して SNS をスクレイピングする。
  • Python で簡単なテキスト処理 (3) - Beautiful Soup を使ってスクレイピング

    1. Beautiful Soup でデータを取得 気象庁の過去のデータから、特定の値を抽出したい。 Python で簡単なテキスト処理 (2) - データの抽出  においては、ブラウザ上でコピーした文字列 (データ) を、Python のソースコードに貼り付け、必要なデータを抽出した。 今回は、Python で Web にアクセスし、必要なデータを抽出してみる。 Python では、urllib2 を利用すると、 HTTP の POST メソッドを送信することができる。 cf. Python で POST - 掲示板の迷惑投稿を一括削除 ただし、urllib2 を使うのは面倒。代わりに、 Beautiful Soup を利用する。 cf. Panopticon :: Python :: BeautifulSoupを触ってみる 2. スクレイピングとは スクレイピングという言葉は、Ruby

  • Python向けスクレイピングライブラリ·Scrapy MOONGIFT

    ScrapyPython製のオープンソース・ソフトウェア。Webサービスから必要な情報を抜き出したり、自動操作をしたりと未だに利用されているのがスクレイピングと呼ばれる技術だ。求人、不動産、Eコマース…様々なサイトの情報を機械的に収集し、データベースに蓄積している。 Pythonで外部サイトからデータを収集する際に RubyでWebシステムを開発している場合、HpricotやNokogiriを使っていたが、Pythonによる開発の場合はどうしたら良いだろう。そこで使えるのがScrapyだ。ScrapyPythonで開発されたスクレイピングとクローリング用フレームワークだ。 ScrapyではWebサイトにアクセスしてデータを取得し、そのデータからXPathを使ってコンテンツにアクセスできる。オブジェクト指向に従って、柔軟に操作ができるのが便利だ。スクレイピングしたデータを使ってWebサイ

    Python向けスクレイピングライブラリ·Scrapy MOONGIFT
  • もう1つの、DBのかたち、分散Key-Valueストアとは

    もう1つの、DBのかたち、分散Key-Valueストアとは:分散Key-Valueストアの命「Bigtable」(1)(1/3 ページ) RDBとは別の、クラウド時代のデータベースとして注目を浴びている「分散Key-Valueストア」。その命ともいえる、Googleの数々のサービスの基盤技術「Bigtable」について徹底解説 クラウド時代のデータベース「分散Key-Valueストア」 グーグルがインターネットの世界をここまで席けんできた最大の理由は何でしょうか。実は、それは同社の優れた検索技術ではありません。グーグルが成し遂げた最も大きなブレークスルーの1つは、同社が生み出した巨大な分散データストア、「Bigtable」にあります。 Bigtableは、Google検索をはじめ、YouTubeやGoogle MapGoogle Earth、Google Analytics、Goog

    もう1つの、DBのかたち、分散Key-Valueストアとは
  • 新卒プログラマが押さえておくべきポイント – 長期か、短期か、それが問題だ

    まずは、個人的な話から。 会社を辞めて、ちょうど1年。Webサービスを作り始めて、4年以上経つでしょうか。 学校でプログラムを習い、それを基礎にWebサービスを作り始めました。 私は高専で、情報工学を専攻していました。 そのため、情報関連技術の基礎的なところは、ひと通り、学校で学んで来ました。 Webサービスを作り始めて、学校で学んだそれらの知識も役立っています。 しかし、確実に学校だけでは、学べないことがあります。 それが、今回のテーマである”長期か、短期か、それが問題だ“です。 ここからは、私が感じる、学生時代に学べなかった、これから学ぶべきことをまとめていきます。 長期的視点を持つこと 長期的視点、それは言い換えると、”運用を考える“ということです。 運用と一言に言っても、様々な運用があります。 インフラの運用 サービスの運用 コードの運用 インフラとサービスの運用はイメー

    inouetakuya
    inouetakuya 2011/04/08
    オープンソースほど、自分のコードが洗練される場はありません。/ 言語を極めた基準の一つに、適切なテストコードが書ける、ということが挙げられます。
  • Google App Engineの料金体系が面白い

    社内でGoogle App Engineのミニ勉強会をやることになったので、技術者らしくAPIとかBigTableまわりとかやろうかなーと思って色々ドキュメントをあさっていたところ、思いがけず非常に面白いものを見つけてしまった。 それは、料金体系。たいていのGAE紹介サイトには、〜まで無料、以降〜みたいな形でさらっと書いてあるんだけど、思った以上に奥が深い。DoCoMoやソフトバンクモバイルより奥が深い。しかも、この料金体系によってアプリケーションの作り方にまで影響が出てくる可能性がある。こうなってくると、JPAとかJDOとか開発環境とか紹介するのなんて馬鹿馬鹿しくなってしまった。Google App Engine勉強会、って名目で人呼んどきながら、ずーっと料金の話ってありだろうか?なしだろうなぁ。 基的な概念、リソースとクォータ さて、Google App Engineには利用可能な資

    inouetakuya
    inouetakuya 2011/04/08
    CPU時間はデータストアで使った時間も含む。外部サービス呼び出し等による待機時間は含まない。また、CPU消費時間の目安として、以下のようなものがあげられている。
  • ここが大変だよBigtableとGoogle App Engine

    2つのインデックス「シングルプロパティ」「コンポジット」 「シングルプロパティインデックス」がカギ Datastoreサービスでは、あるテーブルに含まれるすべてのエンティティについて、すべてのプロパティ(テーブルのカラムに相当)の値をキーとして並べた「シングルプロパティインデックス」と呼ばれるインデックステーブルが自動的に作成されます。 例えば、テーブルEmpが備える「name」「age」「dept_key」という3つのプロパティについて、「テーブル名+プロパティ名+プロパティ値」をキーとし、「Empテーブルの各行のキー」を値とする以下のようなインデックステーブルが作成されます。 Datastoreサービスでは、このシングルプロパティインデックスを用いることにより、アプリケーションが実行するクエリを「インデックスとスキャンの組み合わせ」に背後で変換しています。 例えば、上述の「age >=

    ここが大変だよBigtableとGoogle App Engine
    inouetakuya
    inouetakuya 2011/04/08
    これはいわば、「想定されるすべてのクエリの検索結果をあらかじめインデックステーブルに並べておくようなもの」です
  • ここが大変だよBigtableとGoogle App Engine

    ここが大変だよBigtableとGoogle App Engine:分散Key-Valueストアの命「Bigtable」(3)(1/2 ページ) RDBとは別の、クラウド時代のデータベースとして注目を浴びている「分散Key-Valueストア」。その命ともいえる、Googleの数々のサービスの基盤技術「Bigtable」について徹底解説 月間3000万PVの大規模サイトの運用費が月額4万円!? 月間3000万PV相当の膨大なトラフィックを楽々とさばく大規模サイトが、月額4万円弱で運用されている。 Google App Engine(以下、App Engine)が普及するにつれて、そんな驚愕の国内事例も登場しつつあります。GClueがApp Engine上で実装したmixiアプリモバイルモバイルには、1日100万PV以上のアクセスが集中している状態でもサービスのレスポンス低下やダウンは皆無

    ここが大変だよBigtableとGoogle App Engine
  • Cloud Computing考:Amazon ec2とGoogle App Engineの違いを私なりにまとめてみた

    Cloud Computing の話が注目されるようになってしばらく経つが、商用での格応用という意味ではまだまだ未熟な市場である。PhotoShareは去年の7月サービス開始時から Amazon の ec2+S3 という組み合わせで運営しており、私から見れば当然の選択だったわけだが、あのタイミングで商用サービスへの採用に踏み切った会社も少なかったのか、何件かインタビューの申し込みが来たりして少し驚いている(参照)。 すぐに陳腐化するハードウェアの資産はできるだけ持ちたくないし、自分でデータセンターにラックを借りるなんてことはコスト的に見合わない。かといって、通常のレンタルサーバーは初期費用がばかにならない(今は少しは改善されているのかも知れないが、去年の段階では「それじゃあハードが自分で買えるじゃん」と言わせるぐらいの初期費用を請求する企業がほとんどであった)。それに加えて、どのくらいの

    inouetakuya
    inouetakuya 2011/04/08
    「ハードウェアの故障にどう対応しよう」「ユーザーが増えた時にデータベースをどう分けよう」などのことは心配せずに、サービス作り・ソフトウェア作りに100%集中したいのであれば、Google App Engineの方が格段の「
  • GAEでPythonを始めるときに知りたい4つのまとめ

    if ( $blog == " Webエンジニアのためのライフハック " ) { print " 1-byte.jp "; } ホーム1-byte.jpとは 書いてるヒトは 最近、とても気になっていることがあります。 それが”Google App Engine + Python”です。 元々、Pythonには興味がありました。 オライリーのPython入門も読破しました。 10日でおぼえる Python 入門教室も5日まではやりました。 しかし、そこで終わりました…。 CakePHPという慣れ親しんだ言語とフレームワークがあったので、そちらに走ってしまいました。 ですが、私はPythonistaに憧れるPHPerです。 ここいらで一つ、重い腰を挙げてPythonの勉強を始めることにしました。 Pythonを勉強する一つの強い理由付けとして、”Google App Engine“の存

  • たぶん世界で一番シンプルなバージョン管理システム -RCS- | バシャログ。

    こんにちは nakamura です。今年もヒートテックのありがたい季節になってきましたね。サムイサムイ、、、 バージョン管理と言えば Subversion や CVS, 最近でいうと git や mercurial といった分散型のシステムも人気ですが、今回紹介する RCS はそんな高機能なバージョン管理システムとは対照的にとにかくシンプル!機能は限られてるけどその分お手軽なツールなのです。サーバの設定ファイルなんかを管理するのにとても便利ですよ! インストール CentOS の場合は以下のコマンドでインストールできます。他のディストリビューションでも、大体パッケージがあるはずなので探してみてください。 yum install rcs インストールしたら、特に設定もいらずそのまま即使えます。デーモンを常駐させる必要もなければリポジトリもいらないので楽ですね〜。 使ってみよう! ではさっそく

    たぶん世界で一番シンプルなバージョン管理システム -RCS- | バシャログ。
    inouetakuya
    inouetakuya 2011/04/08
    サーバ設定ファイルのように『バックアップは別で取ってるからリモートに保存するまでしなくてよくて、ただ単純に変更履歴だけ分かるようにしておきたい!』というようなケースにはバッチリですよ。
  • Gitのリポジトリを柔軟に管理する gitosis | Act as Professional

    GitHubの大普及で、もうプログラマーさんはみんなgitで開発しているかと思います。 でも、大人数でリポジトリを扱ったり、いくつものプロジェクトを扱うと、アクセス管理が大変です。 アクセス管理を柔軟におこない、リポジトリの追加も簡単なgitosisを使いましょう。 gitsisはgitの管理ツールです。gitosisを使えば、 サーバにログインすることなくリポジトリの追加ができる 読み取り専用などユーザーごとに細かいアクセス管理ができる 設定ファイル自体もgitで管理されているので、万が一のことが起きても戻せる それでは、Ubuntu 10.04にインストールしてみましょう。 $ sudo apt-get install gitosis gitosisのイニシャライズをします。SSH_KEY.pubは管理者の公開鍵を指定してください。 $ sudo -H -u gitosis gitos

    Gitのリポジトリを柔軟に管理する gitosis | Act as Professional
  • ホームディレクトリをGitで簡単に管理するための.gitignore活用法

    さて、まったくブログを更新していないtfmagicianです。 こんにちは。 先月は1記事しか書いてないですね。今年は月10記事以上を目標に、楽しみながら書いていきます。 今日は、Gitをネタに取り上げます。 前回はプロジェクトに関するGitネタでしたが、今回は個人的なモノ。 Gitと一緒にCakePHPを楽しむ – CakePHP Advent Calendar 2010 6日目 あなたの宝物が詰まったホームディレクトリをGitで管理してみます。 ホームディレクトリの”なに”を管理するか これは人によって異なります。 例えば、あなたがMac使いで、Mac上でGitを使うというなら、ドキュメントも管理したくなるかもしれない。 例えば、あたながLinux使いなら、設定ファイルだけGitで管理出来れば良いかもしれない。 .gitignoreをうまく設定出来れば、どちらのパターンも対応出

  • 3年使ったRedmineの使い方について共有したい10のこと

    前回は、1000人のエンジニアRedmineを使い出すまでの事例を紹介させていただきました。今回は、Redmineの使い方や、大規模に変化してくRedmineの運用について、2年間の運用や改善から得たナレッジや、気がついたことをまとめていこうと思います。 1. Redmineのオブジェクト構造を理解した方がいい Redmineは以下の構造になっているので、タスクの属性をうまく分類する必要があります。 プロジェクト > サブプロジェクト > バージョン > 親チケット > 子チケット > トラッカー > カテゴリ 注意したいのは、プロジェクト・サブプロジェクトには期限が設定できず、バージョンには終了日時、チケットには開始日時と期限をつけることができる点です。期限があるものには、期限のあるものを当てはめるのがすっきりします。Redmineを使って「何を」「どう」管理していきたいのかを、まず考

    3年使ったRedmineの使い方について共有したい10のこと
  • パスワード認証

    ラジック 気軽に楽しめるブログメディア「ラジック」は2ちゃんねるを中心にエンタメ情報をお届け!

    パスワード認証
  • 今からハジメるHTML5マークアップ

    1. 有限会社futomi 代表取締役 羽田野 太巳(はたの ふとみ) http://www.futomi.com/ http://www.html5.jp/ http://twitter.com/futomi

    今からハジメるHTML5マークアップ
  • HTML5, きちんと。

    HTML5の概要や目的について説明しています。セクション関連要素についても紹介しています。 2009年のCSS Nite vol. 40で話したときのスライドです。Read less

    HTML5, きちんと。
  • HTML5とは何かを簡単にまとめてみた

    ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog はじめに こんにちは。R&D統括部 制作部 ウェブデベロップメント部に所属しております。岡部和昌(@kzms2)と申します。 最近スマートフォンやタブレット向けのページを作成する機会が増えてきました。 なので、今回はちまたで大人気のHTML5について書きます。 若干今更な内容にも思えますが、あまりHTML5になじみがない方にもわかってもらえるような内容にしています。 HTML5の基概念や思想・実際の組み方というよりも、 HTML5で組むと今までと比べて何が違うのか などについて書いていきます。 なぜこれからHTML5なのか HTML4との違いがわからない HTML5を使う利点がわからない など疑問に思っている方はぜひ見ていた

    HTML5とは何かを簡単にまとめてみた
  • いますぐ実践! Linuxシステム管理

    「いますぐ実践! Linux システム管理」はこちらです。 メルマガの解除、バックナンバーなども、以下からどうぞ。 https://www.usupi.org/sysad/ (まぐまぐ ID:149633) その他、作者に関するページは、概ね以下にございます。 https://www.usupi.org/kuri/ (まぐまぐ ID:126454) http://usupi.seesaa.net/ (栗日記ブログ) https://twitter.com/kuriking/ (twitter) https://facebook.com/kuriking3 (facebook) https://jp.pinterest.com/kuriking/pinterest) https://www.instagram.com/kuri_king_/ (instagram) [バックナンバーのトップへ

  • [git] 共有リポジトリを作る:git init --bare --shared=true - satoko's blog - s21g

    1  git init 2  git remote add origin ssh://git.s21g.com/mnt/git/repo.git 3  git add . 4  git commit -m "initial import" 5  git push origin master

    inouetakuya
    inouetakuya 2011/04/08
    サーバの repo.git にファイルが追加された時点で clone できるようになります。空のリポジトリを clone しようとしてもエラーが出ます