m_shige1979のときどきITブログ

プログラムの勉強をしながら学習したことや経験したことをぼそぼそと書いていきます

Github(変なおっさんの顔でるので気をつけてね)

https://github.com/mshige1979

Perl

Perl6のインストールを試す

環境 vagrantのCentOS6.x インストール git clone https://github.com/rakudo/rakudo.git cd rakudo/ perl Configure.pl --prefix=$HOME/perl6 --gen-moar --gen-nqp --backends=moar make make install バージョン確認 $ $HOME/perl6/bin/perl6 -v This is …

Amon2のチュートリアルをやってみた

最初はチュートリアルから 基本的なデータベースやルーティングなどを理解する意味でやってみる 手順 雛形を作成して必要なモジュールをインストールしておく amon2-setup.pl BBS cd BBS/ carton install sql/sqlite.sql を編集 CREATE TABLE IF NOT EXISTS …

perlの復習(map)

復習資料 workshop-2013-05/slide.md at master · perl-entrance-org/workshop-2013-05 · GitHub なぜかたいていはfor文とか使ってしまう mapとかも使えたほうがイケてる感じがするので調べ直さないと… map 配列の一覧を返す機能、値に加工などを行うことも…

perlでtwitterAPI(retweet、favorite)

自分のツイートをリツイートできないことに やっと気づいた。だってなんどやっても 403が帰ってくるから… 実装 sample1.pl #/usr/bin/env perl use strict; use warnings; use Net::Twitter; use utf8; use Data::Dumper; binmode STDOUT, ":utf8"; my $cons…

PerlのExport確認

以前 Perlのモジュールでモジュール名とかを省略する - m_shige1979のささやかな抵抗と欲望の日々 Perlのモジュールでモジュール名とかを省略する - m_shige1979のささやかな抵抗と欲望の日々exportで勉強したんだけどちょっと忘れそうなので再度学習 とりあ…

Mojolicious+Angularjsでwebsocket2

なんかStarmanではだめのよう 今更ながら、nginx+Mojolicious+WebSocketでチャットアプリに挑戦 - 鈍足ランナーのIT日記 今更ながら、nginx+Mojolicious+WebSocketでチャットアプリに挑戦 - 鈍足ランナーのIT日記ここの設定をまるごと拝借して構成 上記…

Mojolicious+Angularjsでwebsocket

github https://github.com/mshige1979/reoreotsubuyakikun angularjsでwebsocket Controllerだけではうまくいかないことがあるのでfactoryなどが必要になってくる 実装 default.html.ep <html> <head> <title><%= title %></title> <link rel="shortcut icon" href="<%= url_for '/favicon.ico' %>"> </link></head></html>

perlの復習(配列やハッシュ)

時々Perlのソースを見ていくと?というソースがある Perlの配列やハッシュを引数で設定しているからでした。ちょっと簡略化すると以下のような感じ 配列 sample1.pl #!/usr/bin/env perl use strict; use warnings; use Data::Dumper; sub test1{ my @list =…

Amon2のフレームワークを触ってみる

別に Mojoliciousに飽きたわけではない。他のフレームワークにも触れておく必要があると感じだけ インストール cpanm Amon2※フレームワークなので入れるものが非常に多い なんかamon2-setup.pl が使用できるようになったみたい $ amon2-setup.pl Usage: % am…

Perl入学式に参加した感想&その後ちょっと作ったMojoliciousのサイト

Perl入学式 Advent Calendar 2014の12月16日(火)の記事です。 昨日はpapixさんのReplyでお手軽にPerlのコードを動かす話でした。Perlの対話型環境は始めて聞きました。ちょっと触ってみようかと思います。ここではPerl入学式への参加したことやその感想など…

perlでAnyEvent::Twitter::Streamを使用して取得

AnyEvent::Twitter::Stream sample.pl #/usr/bin/env perl use strict; use warnings; use AnyEvent::Twitter::Stream; use utf8; use Data::Dumper; use Time::Local; binmode STDOUT, ":utf8"; my $consumer_key = "consumer_key"; my $consumer_secret = …

perlでtwitterAPI(search、update)

メモ用 実際にやらないと覚えないので… コピーをそのまま使用して動かないとかよくあるので… 準備 https://apps.twitter.com へアクセスしてアプリの登録とキーを生成しておく キーは書き込み可能なように対応 search クエリーで検索してくれます sample1.pl…

Teng::Plugin::SearchBySQLAbstractMoreを試す

いろいろなモジュールがある どれを使用することが正しいのかなんてわからないので適当にネットで検索したものを使用することにする 今回は集計とかしたかったので「Teng::Plugin::SearchBySQLAbstractMore」を検索しました 準備 cpanm cpanm Teng::Plugin::…

Mojoliciousでstashを使用する際、定義していないと…

概要 Mojoliciousではテンプレートで変数を割り当てる際はstashを使用する サンプル package Sample::Web::User; use Mojo::Base 'Mojolicious::Controller'; # ログイン共通 sub init { my $self = shift; # ログイン処理独自のcssを設定 $self->stash->{cs…

Mojoliciousで表示前の共通処理(bridge)

bridge Mojoliciousで各ページを表示する前にhtmlのタイトルなどの共通設定を各ページで定義するのが無駄な感じがする場合に処理をするところ。これを使用することで認証チェックなども実施可能 構成 [vagrant@localhost sample_web]$ tree . ├── lib │ └── …

perlモジュール確認(Digest::SHAとかText::Markdown::Discount)

Digest::SHA 暗号化を行うモジュール認証の処理を使用する際はお世話になるかも… インストール cpanm Digest::SHA サンプルソース #!/usr/bin/env perl use strict; use warnings; use Digest::SHA qw(sha1_hex sha256_hex sha384_hex sha512_hex); my $pass…

PerlでTengを使用したDB操作2

MVCのモデルみたいな感じにしようと画策中データベースを接続する際は毎回接続するのはちょっと面倒臭いのでなんか1つの場所で接続して使用した方がいいはず。 構成 . ├── config.pl ├── lib │ ├── Config │ │ └── App.pm │ ├── DB │ │ └── Schema.pm │ ├──…

MojoliciousでCSRFを実施

Mojoliciousでは内部実装可能 なんかtokenが同じ値なのでなんかおかしいかも… サンプル コントローラーのモジュール package Sample::Web::Test1; use Mojo::Base 'Mojolicious::Controller'; use Mojolicious::Validator; use Mojolicious::Validator::Vali…

PerlでTengを使用したDB操作

準備 データベース作成 create database sample_db1; テーブルを作成 create table posts( id int auto_increment NOT NULL, title varchar(50), body varchar(256), created DATETIME, modified DATETIME, primary key(id) ); 適当にデータを突っ込んでおく…

PerlでWebアプリのモデルなしサンプル

なんか色々と迷走している感じ、調べているけどどんなものを作成するのがいいかで結構悩み中 Mojoliciousで作成する 生成 $ mojo generate app Sample::Web ↓ [vagrant@localhost mojo1]$ mojo generate app Sample::Web [mkdir] /vagrant/perl/mojo1/sample…

perlの学習(再帰方法)

再帰処理? なんか自身の関数を呼び出す処理。これがあるコードはデータの流れを理解するのに時間がかかる。 実際、苦手。 簡単なやつ sample1.pl #/usr/bin/env perl use strict; use warnings; func(10); sub func{ my ($a) = @_; printf("%04d\n", $a); i…

MovableTypeとダイナミック・パブリッシング

ダイナミック・パブリッシング MovableTypeの記事を動的に表示する機能。 デフォルトの状態では静的にファイルを作成するがこの機能により、動的に記事を表示できる。phpでの設定を調べました 設定 いろいろやることがめんどうなんで以下のものを作成して実…

Perlでオブジェクトサンプル(シングルトンパターン)

シングルトンパターン モジュールでインスタンスを1つしか作成できないもの データベースやファイルのポインタなどを使用する場合に使われる ソース sample.pl #!/usr/bin/env perl use strict; use warnings; use Sample::Test01; my $obj = Sample::Test0…

Perlのモジュールでモジュール名とかを省略する

なんかたまに use Sample::Test1 qw(test1 test2); こんな感じの記述があるソースをperlで見かけるけどなんでか」わからないのでちょっと調べたエクスポートしているとのことよくわからないので実装サンプルを作ってみた。 いままで sample.pl #!/usr/bin/en…

Perl Beginners #13へ参加しました

やべえぇぇぇぇぇぇぇぇぇぇぇぇl 今回まとめるの面倒だったんでメモを適当にブログに貼り付けてしまった。最近、全然勉強していない。Perlで何か作成しようと考えていたのになにもアイデアがでないまま ズルズルと引き伸ばされている。で今回の勉強会 概要…

plenvのcpanmインストールでエラー

インストールできない [vagrant@localhost ~]$ plenv install-cpanm % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 113 226 113 226 0 0 13 0 0:00:17 0:00:16 0:00:01 6647 Bareword found where …

PerlでWebデータを取得し、任意のデータを抽出

正規表現難しい こればっかりはなかなか理解できない やること とあるサイトのHTMLを抽出して表示HTMLを抽出→タグを抽出→指定のタグを抽出→不要なタグを除去などして対応する。 実装 #!/usr/bin/env perl use strict; use warnings; use LWP::UserAgent; my …

【Perl版】TwitterAPIでStremingAPIを使用してつぶやきをリストで抽出

今度はPerlでストリーミングを取得 cpanmモジュールであるらしいけどなんかうまく動かなかったので自力で取得 なんか調べる度に新しいcpanモジュールが出てきてキリが無くなった… データの流れは同じはず 基本、php版と同じ流れでデータを渡せばイケるはず… …

gitprepのインストールメモ

GitLabに興味があったので調べてみた インストールで詰んだw やること多すぎて意味不明 エラーが発生しても対応できなかったので潔く諦めました。 GitPrepってなんだ? Perlで作成したプライベートリポジトリ管理ツールとのことこれどれどれ…なんとなくだけ…

Perl入学式in東京 第2期修了式

イベント Perl入学式のイベントの2期が終わった。いろいろと勉強させてもらったのでちょっとだけ 場所 東京都品川区西五反田1-21-8 KSS五反田ビル ※いつものところ 時間 2014/03/29 18:00~ ※補講のあとすぐ 料金 無料 ※JPA( http://japan.perlassociation.…