Category Archives: PERSONAL COMPUTER - Page 7

iPhone iPod のリモコン コントローラが効かなくなった時の対処法

ポケットの中に入れるのでジャックの中に綿埃が入るみたいですね。
それで接触不良を起こしている事が多いようです。

それで詰まった綿埃を取り除く方法ですが、爪楊枝を折ったもの(斜めに切ったもの)をジャックの中に挿し込み回転させます。それで絡まった綿埃を引き出せば簡単に対処することができます。

針で同様に行うと内部に傷を付ける可能性があるので爪楊枝などを使うことをおすすめします。

Twitter フォロワー同期(フォロー専用)Bot Perl 作成編

とりあえずさっきのプログラムを書きなおして完全にフォロワーさんを同期するプログラムを書きました。
Botみたいで(処理してるのはBotですが・・・)味気ないけど仕方ないですねwwww

#!/usr/bin/perl
use utf8;
use strict;
use warnings;

# モジュール使用宣言
use Array::Diff;
use Data::Dumper;
use Net::Twitter;
use YAML::Tiny;
use Encode;
use FindBin;

# 現在のパスから見て設定ファイルを読み込み
my $config = (YAML::Tiny->read($FindBin::Bin . '/config.yml'))->[0];
# OAuth認証
my $twitter = Net::Twitter->new(
     traits => ['API::REST', 'OAuth'],
     consumer_key => $config->{'consumer_key'},
     consumer_secret => $config->{'consumer_secret'}
);
$twitter->access_token($config->{'access_token'});
$twitter->access_token_secret($config->{'access_token_secret'});
# 認証失敗時の処理
die('Auth failed:'.$config->{'username'}) unless ( $twitter->authorized ) ;

# ユーザー名を含むユーザー情報を取得
my $cr = $twitter->verify_credentials;
my $own_id = $cr->{id};

my $nextc = -1; # paging default.
my @following_id_list; # outgo

# APIの仕様?から一度に100人までしか取得できないから0が返ってくるまでdoブロックをループ
do{
	# パラメータcursorは前回取得したフォローイングまでの番号が入っている
	my $following_list = $twitter->friends_ids({ id=>$own_id, cursor => $nextc });
	$nextc = $following_list->{next_cursor};
	# 配列からフォローイングのidを取得
	foreach my $id (@{ $following_list->{ids} }){
		push(@following_id_list, $id); # 後で比較するためにフォローイングを配列に保管
	}
}while($nextc!=0);
# 文字昇順でソート
@following_id_list = sort @following_id_list; 

$nextc = -1;
my @followers_id_list; # income

# APIの仕様?から一度に100人までしか取得できないから0が返ってくるまでdoブロックをループ
do{
	# パラメータcursorは前回取得したフォロワーまでの番号が入っている
	my $followers_list = $twitter->followers_ids({ id=>$own_id, cursor => $nextc });	
	$nextc = $followers_list->{next_cursor};
	# 配列からフォロワーのidを取得
	foreach my $id (@{ $followers_list->{ids} }){
		push(@followers_id_list, $id); # 後で比較するためにフォロワーを配列に保管
	}
}while($nextc!=0);
# 文字昇順でソート
@followers_id_list = sort @followers_id_list; 

# 差分を取得(フォローイング)
my $diff_following = Array::Diff->diff(@following_id_list, @followers_id_list);

# 差分を取得(フォロワー)
my $diff_followers = Array::Diff->diff(@followers_id_list, @following_id_list);

# リムった人をリム返し
foreach my $delid_following (@{ $diff_following->{deleted} }){
	$twitter->destroy_friend($delid_following);
}

# フォローした人をフォロー返し
foreach my $delid_followers (@{ $diff_followers->{deleted} }){
	$twitter->create_friend($delid_followers);
}

うん。書いてて思った。今まで差分取るとかループで比較するだけじゃんとか思ってたけどData::Dumperって結構便利だなw 今度機会があったら使ってみようかな?

Twitter フォロワー同期(リム専用)Bot Perl 解析編

自動でフォローされたらフォローし返すプログラムを書きたいけどNet::Twitterの使い方がわからなかったのでとりあえずフォロワー同期(リム専用)Botのソースをマニュアルを読みながら適当に解析してコメント打ちました。

マニュアル:Net::Twitter(英語)
参考にさせて頂いたソース:■[メモ]Twitterで自動フォロー削除

#!/usr/bin/perl
use utf8;
use strict;
use warnings;

# モジュール使用宣言
use Array::Diff;
use Data::Dumper;
use Net::Twitter;
use YAML::Tiny;
use Encode;
use FindBin;

# 現在のパスから見て設定ファイルを読み込み
my $config = (YAML::Tiny->read($FindBin::Bin . '/config.yml'))->[0];
# OAuth認証
my $twitter = Net::Twitter->new(
     traits => ['API::REST', 'OAuth'],
     consumer_key => $config->{'consumer_key'},
     consumer_secret => $config->{'consumer_secret'}
);
$twitter->access_token($config->{'access_token'});
$twitter->access_token_secret($config->{'access_token_secret'});
# 認証失敗時の処理
die('Auth failed:'.$config->{'username'}) unless ( $twitter->authorized ) ;

# ユーザー名を含むユーザー情報を取得
my $cr = $twitter->verify_credentials;
my $own_id = $cr->{id};

my $nextc = -1; # paging default.
my @following_id_list; # outgo

# APIの仕様?から一度に100人までしか取得できないから0が返ってくるまでdoブロックをループ
do{
	# cursorは前回取得したフォローイングまでの番号が入っている
	my $following_list = $twitter->friends_ids({ id=>$own_id, cursor => $nextc });
	$nextc = $following_list->{next_cursor};
	# 配列からフォローイングのidを取得
	foreach my $id (@{ $following_list->{ids} }){
		push(@following_id_list, $id); # 後で比較するためにフォローイングを配列に保管
	}
}while($nextc!=0);
# 文字昇順でソート
@following_id_list = sort @following_id_list; 

$nextc = -1;
my @followers_id_list; # income
do{
	# cursorは前回取得したフォロワーまでの番号が入っている
	my $followers_list = $twitter->followers_ids({ id=>$own_id, cursor => $nextc });	
	$nextc = $followers_list->{next_cursor};
	# 配列からフォロワーのidを取得
	foreach my $id (@{ $followers_list->{ids} }){
		push(@followers_id_list, $id); # 後で比較するためにフォロワーを配列に保管
	}
}while($nextc!=0);
# 文字昇順でソート
@followers_id_list = sort @followers_id_list; 

# 差分を取得
my $diff = Array::Diff->diff(@following_id_list, @followers_id_list);

# リムった人をリム返し
foreach my $delid (@{ $diff->{deleted} }){
	$twitter->destroy_friend($delid);
}

だいたい構造がわかったのでちゃちゃっと書き足しましょうか^^

Office For Macが快適に落ちてデータが飛ぶのを全力で阻止してみる

Mac for OfficeでWordを使っている人なら分かると思うのですが猛烈によく落ちます・・・1時間以上作業をすると必ず1〜3回は落ちます。。。

そして、一応作成中のデータは残っているのですがほぼ作り直しの状態になります。。。もう、キレそうになりますね。。。Macを使ってる私のMacに対する最大の不満です。
そして今回、自宅にいない、この何も出来ない時期にとっとと対策しておきたいと思います。

Officeの自動保存機能を利用してなるべく飛ぶ消失する量を減らしたいと思います。

試しにWordを開き、メニューバーの”Word”を開き、”環境設定”を開きます。

”保存”をクリックします。

”自動バックアップ”の間隔を10分から1分に変更します。

これでもしもWordが作業中に落ちても1分前のデータが残ると思います。
他のExcelやPowerPointも同じように設定できます。

MacOSX 10.6 セキュリティー対策 ClamXav

まぁ、別にUnix系OSはウイルスに感染する事が殆ど無いので気にすることではないのですが、自分が感染しなくとも他人のWin系パソコンにウイルスを中継する可能性があるので・・・
(特にサーバとして公開している場合など)

Unix系サーバでオープンソースのセキュリティーソフトの定番はClamAVなので今回Macでも同じように、このClamAVをGUIで操作するためのソフトClamXavを組み合わせて使用したいと思います。

本来ClamAVはCUIでコマンドを使い操作するので慣れない人は使いづらいかと思います。
自分もサーバじゃないので出来る限りGUIで操作できないかと思って探していました。
※ 実は常駐してくれるタイプでかつGUIのソフトを探していたのですが。。。フリーなのは無いですね^^;

ここからダウンロードできます。ClamAVがインストールされていない場合はClamAVをインストールするか聞いてくると思いますのでインストールしてあげてください。
ClamXav The Free Anti-Virus Solution for Mac OS X

インストーラ

起動画面(スキャン中)

参考:必ず入れておきたいMac用アンチウイルスソフト「ClamXav」

Pound 2.5 CentOS 5.5 rpm インストール

# wget http://ftp.iij.ad.jp/pub/linux/fedora/epel/5/i386/epel-release-5-4.noarch.rpm
# rpm -Uvh epel-release-5-4.noarch.rpm

# wget http://rpms.famillecollet.com/enterprise/5/remi/i386/remi-release-5-8.el5.remi.noarch.rpm
# rpm -Uvh remi-release-5-8.el5.remi.noarch.rpm

# vi /etc/yum.repos.d/remi.repo
[remi]の中のenable=0をenable=1に変更

# yum update
# yum install pcre-devel
# yum install google-perftools-devel

# wget http://www.invoca.ch/pub/packages/pound/pound-2.5-1.src.rpm
# rpm -ivh pound-2.5-1.src.rpm
# rpmbuild -ba /usr/src/redhat/SPECS/pound.spec

32Bit版の場合
# rpm -ivh /usr/src/redhat/RPMS/i386/pound-2.5-1.i386.rpm
64Bit版の場合
# rpm -ivh /usr/src/redhat/RPMS/x86_64/pound-2.5-1.x86_64.rpm

設定ファイルの場所
# vi /etc/pound/pound.cfg

参考
CentOS5.5にPound最新版をRPMでインストール

MySQLのCPU使用率が異常になるので対策してみた

最近やたらMySQLが重いと思ったらCPU使用率が60%~90%を使っていてなんだコレ?とか思いながら対策しました。以前のサーバでも深刻な悩みでしたので困っていたのですが、対策はとったことがあるので今回も実行しました。

一応キャッシュを使えば負荷軽減になります。

# vi /etc/my.cnf
[mysqld]
query_cache_limit=1M
query_cache_min_res_unit=4k
query_cache_size=24M
query_cache_type=1
key_buffer = 16M
sort_buffer_size = 1M
read_buffer_size = 256K

# service mysqld restart

ただやはり将来的にはスペックを見直すべき状態がくると思います。。。。

Pixiv画像ダウンローダ?みたいなもの

いや~いままで田舎者でPixivというものを知らなかった
いや絵かきさんではないのであまり興味がna(殴

・・・私は悪魔でプログラムを書いてサーバで走らす事しか興味がない人間なので友達の要望がなければ見向きもしなかったかもしれませんw

そんなわけで簡単な(普段からWindows使う人はなれないかも・・・)ダウンローダを作ってみました

Download
こちらのダウンロードページよりダウンロードをお願い致します。

元はLinuxとかMacとかあのあたりで動かすソフトなので・・・・コマンドです
(周りの様子があれば今後マウスでつんつんできるようにするかも)

まぁそんな感じで気軽じゃないかもしれませんが一応Windowsで動くものを作りました。

今後気が向けば色々と更新するかもしれませんね~
まぁ無ければ放置de(殴 

・・・はい まぁタグで検索したりとかは頑張れば作れると思いますがなんせ時間ないし・・・

―――――――――――――――――――――――――――――――――――――
 ぷろぐらむめい:~ひととおり動くPixiv画像ダウンローダ~
 ばーじょん    :Ver α 01.00
 さくしゃ      :ORBIT
 ほむぺ        :https://www.orsx.net/blog/
 かいはつげんご:Perl
 おーえす      :Windows 7 / Windows XP
 ちょさくけん  :まぁ、常識の範囲であそんでね
―――――――――――――――――――――――――――――――――――――

≪その他免責事項≫
 このソフトウェアを使用したことによって生じたすべての障害・損害・不具
合等に関しては、私と私の関係者および私の所属するいかなる団体・組織とも、
一切の責任を負いません。各自の責任においてご使用ください。

・インストールのしかた
  ① このフォルダに同封されたpget.exe(実行ファイル)をC:Users[ユーザ名]にコピーまたは移動してください

  ② 同様にconfigs(フォルダ)もC:Users[ユーザ名]にコピーまたは移動してください

  ③ メモ帳で②でコピーしたconfigs(フォルダ)の中のpget.confを開き"必ず設定"の項目を編集して保存してください

  ④ C:に"Download"フォルダーを作成してください。

    設定ファイルの書き方 (下のように内容を""でくくったりしないようにお願いします)
     username = hogehoge
     password = honyahonya
    ※ このユーザは架空のユーザです

・アンインストールのしかた
  先ほどコピーまたは移動した①②④を削除してください。間違って他のファイルを削除しないようにご注意ください。

・使い方
  ① コマンドプロンプトを起動してください。

  ② Pixivの気になるユーザのページを表示してください。

  ③ URLを確認してください。http://www.pixiv.net/member.php?id=000000 この000000の数字を覚えておいてください。

  ④ コマンドプロントでpget -i (先程の数字) -d ./img と入力するとダウンロードが始まります。

  ⑤ 完了したらC:Users[ユーザ名]imgを開き画像を見ることが出来ます。

  ~補足~
    ④のコマンド"pget -i (先程の数字) -d ./img" の"-d ./img"を省略するとインストールのしかたの④で作成されたフォルダーに保存されます。

    コマンドプロンプト起動方法
    (左下 Windows マーク) → 全てのプログラム → アクセサリ → コマンドプロンプト

・履歴
2011/01/16 Ver α 01.00 公開

Mac OSX 10.6 Perl/Tk インストール

普通にcpanよりtkをインストールしたところmake testに失敗して下記のように止まってしまい困っていたところ解決方法を見つけたのでメモしておく。
SREZIC/Tk-804.029.tar.gz : make_test NO

ソースを書き換える為cpanのディレクトリへ移動する
$ cd /Users/orbit/.cpan/build/Tk-804.029-VTDuvi/
$ vi myConfig
my $ftinc = Ift(“/usr/include”,”/usr/local/include”,“/sw/include”,$X11INC||());

$ vi PNG/Makefile.PL
if (1)
{
Tk::MMutil::TkExtMakefile(
NAME => ‘Tk::PNG’,
VERSION_FROM => ‘PNG.pm’,
XS_VERSION => $Tk::Config::VERSION,
dist => { COMPRESS => ‘gzip -f9’, SUFFIX => ‘.gz’ },
OBJECT => ‘$(O_FILES)’,
INC => ‘-I/sw/include‘,
LIBS => [‘-L/sw/lib -lpng -lz -lm’],
);
}

$ perl Makefile.PL XFT=1
$ make
$ sudo make install

参考元:Mac OS X 10.6でのPerl(5.10)モジュールのインストール

iPhone アプリ アイコン 画像変更

アイコンは下記のように保存されているためアイコン画像を差し替える。
/var/mobile/Applications/[番号+アルファベット]/[アプリ名].app/icon.png
/var/mobile/Applications/[番号+アルファベット]/[アプリ名].app/icon@2x.png

ここで再起動して反映されない場合アイコン画像がキャッシュされている可能性があるのでキャッシュを削除する。

キャッシュは下記のディレクトリに格納されているので探して削除する。
/var/mobile/Library/Caches/com.apple.IconsCache/com.apple.[アプリ名]_defaultRole-defaultIcon-0
/var/mobile/Library/Caches/com.apple.IconsCache/com.apple.[アプリ名]_defaultRole-defaultIcon-24