それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

送料節約まとめ。ヤマト・ゆうパック・はこBoonを比較しました(オークション送料表)

ヤフオクなどで色々送料を節約する方法を考えました。宅急便の料金は何処も似たようなものだと思っていました。いつもだいたい同じ料金になるし、最寄りの営業所で出せばいいと思ってたり、安心のヤマトで送れば大丈夫と思ってたこともありました。

各社特長がありました

調べてみて、使ってみたら各社特長があります。

比較するのは次の3社+郵便


  1. はこBOON
  2. ゆうパック
  3. クロネコヤマト

最安は【はこBOON

はこBOON」が安いです。特にサイズが大きいものを送る時とっても安いです。
とりあえず「はこBOON」を選んでおくと安心。

2016-12-08 追記

  • 「ネコポス」 以下の理由で言及なし
    • 個人で使えない(メルカリ・ヤフオクなどサイトや個人事業主向け)
    • 補償規定が薄いから特に言及していません。
  • 「クリックポスト」追記
    • 荷物便ではないので補足で触れています。
  • 「宅急便コンパクト」以下の理由で言及なし
    • 計算しても全てにおいてはこぶーん優勢だったので書いてません
    • コンビニの宅急便コンパクトを送るためにコンビニ行くなら、はこぶーんが使えるため。
    • 割引条件
      • 5000円チャージ
      • クロネコメンバーズ必須
      • ヤマト持ち込み<ネコピット必須>
      • 一般的な条件とはいえません。)評価に値しない。したがって言及なしです。

なので、特に記事を変えず、消費税率の値上げもそのままにして記事を公開しています。殆ど変わらねーから

はこBOONとは

伊藤忠が「Yahooゆうパック」を「はこBOON」に切り替えて勝負しています。
はこBOON」の勝負ポイントはサイズ関係なし「重さで料金」です。
伊藤忠クロネコヤマトを一括契約しています。ファミマからクロネコヤマトで送ります。ファミマ限定、クロネコヤマト利用です。

はこBOON特徴

  • サイズは160サイズ以下限定。(最安)
  • ファミマ限定
  • WEB申込必須

はこBOON=ファミマ=ミク

ファミマ限定ってのが大きな特徴。ミクBOON

ゆうパック

小さくても重い物を送るには安い!!!重いものはとにかく、ゆうパック
実家に送るなら、ゆうパック

重さ指定なし。サイズで料金指定

http://www.post.japanpost.jp/service/you_pack/charge/ichiran/13.html


重さ指定なし。箱のサイズだけ!

ゆうパックの特徴

  • 大きさだけ。
  • 同じ住所に何度も送るなら安い
  • 持込割引き100円が基本


できる限り詰め込みましょう!

クロネコヤマト

  宅急便とえば、クロネコヤマト

  丁寧な配送。そのまま簡易包装で出しても安心。細かい配達。安心のクオリティー。

取扱店が多い

とにかく送ろうと思えばすぐに使えるのがヤマト。

取扱店が多いのがデメリット

  • 複数個割引を忘れられることが頻繁にある。
  • 回数券はヤマト営業所以外お断り。

複数個割引はよく忘れられるので注意!*1

複数個割引+持ち込み割引

  • 複数個割引 100円(1個あたり)
  • 持込割引  100円(1個あたり)

重いものは高くなる!

60サイズで4kgだと、80サイズ扱いです。
書籍や工具・バッテリーなど重いものだと、損。

サイズ 荷物の大きさ 重さ
60サイズ 60cm以内 2kgまで
80サイズ 80cm以内 5kgまで
100サイズ 100cm以内 10kgまで
120サイズ 120cm以内 15kgまで
140サイズ 140cm以内 20kgまで
160サイズ 160cm以内 25kgまで
宅急便 | ヤマト運輸

ゆうパック・宅急便・はこBOON まとめ

  1. はこBOON (21ポイント)
  2. ゆうパック(15ポイント)
  3. ヤマト運輸(0ポイント)

太字が最安値、横軸に重量、縦軸にサイズ。
(送料まとめ:同一地域内他府県で比較)

荷物一つ送る場合は「はこBOON」だった。圧倒的ではないかはこBOON


通常送るようなサイズでは、はこBOONが最安値でした。

  • 60サイズ 2kgまで
  • 80サイズ10kgまで
  • 100サイズ15kgまで

ちょっと重いものは、ゆうパックに優位性があります。

  • 60サイズ 5kgまで
  • 80サイズ15kgまで
  • 100サイズ20kgまで


詰め込んだらゆうパックの勝ち。繰り返しになるが普通に送るだけなら、はこBOONが一番安い。

覚え方

荷物 大きい 重い
業者 はこBOON ゆうパック

60サイズは、はこBOON
80サイズは、はこBOON

箱が大きくなっても、はこBOON
10kg 超えたら、ゆうパック


以上になります。

その他の送料

宅配便・宅急便の料金より小さいサイズのはどうなんだろう

A4までの書類の最安値比較

サイズ(mm) 厚み(mm) 重量(g) 業者 価格 商品名
160x92 10 25 郵政公社 60円 ミニレター
-- -- -- この間ずっとクロネコメール
340x240 20 1000 ヤマト 80円 クロネコメール
340x248 30 4000 郵政公社 164円 クリックポスト(新設)
340x248 30 4000 郵政公社 350円 レターパック350
340x250 35 1000 郵政公社 350円 ポスパケット
340x248 指定なし 4000 郵政公社 500円 レターパック500


なんとヤマトのクロネコメールは荷物追跡可能。(郵政公社特定記録相当)

圧倒的ではないかクロネコメール。


ただ、レターパックのほうが、正確で配達が早い。クロネコメールはトラブル多い。10数回使って2回紛失(orz)。でもまぁ、80円でちゃんと送ったよ証明ができるクロネコメールはいい。もちろんトラブル避けるのが目的なら、簡易書留で送ること。

2014-08-10追記

郵便局がオークションのために「クリックポスト」のサービス開始した。

クリックポスト - 日本郵便

条件は以下のとおり。

  • 日本全国164円
  • Yahoo ID と Yahoo ウオレットが必須。
  • 厚さ3cm以下
  • A4サイズ程度(A4が確実に遅れる角2)
  • 宛名ラベルは自分で印刷


クロネコメール便とガチバトルです。ワクワクしますね。

用途別その他の送料

割引券・クーボン ミニレター
CD/DVDなど クロネコメール
書類 クロネコメール
本一冊 定形外
工具など金属 レターパック500
バッテリー レターパック500

ミニレターは送った記録が残らないので、クロネコメールを使うほうがまだマシ。
本は厚みがあるのでクロネコメールは厳しい感じ。定形外かゆうメール

たくさんの書籍を送るには

たくさんの書籍をまとめて送るには、「ゆうパック」が便利です。

僕は一人暮らしを引き上げる時、ゆうパックで実家にまとめて本を送りました。ヤマト使うより2000円程度安くあがった。

番外編:レターパック500はデキる子

レターパックも整形次第で意外と安全に送れるよ。
レターパックを立体成形する方法は知っておくと便利

おまけ、ヤフオク用送料料金表

感想

はこBOONの送料はほんとうによく考えられている

Excelで料金表を埋めて言って戦慄した。はこBOONは横軸に、ゆうパックは縦軸に値段が上がる。ヤマト運輸は階段で両方値段が上がる。
はこBOONは、見事な料金設定だ。考えた人を褒めるしか無い。

はこBOONゆうパックの優位性を見事に消している。同一県内の料金が設定されてるのもそのためだろう。
あえて同一県内の比較をするまでもない。ゆうパックが同一県内60サイズを安くして勝負している。が、しかし【はこBOON】はゆうパックよりさらに20円安く設定されているのだ。


クロネコメールの信頼性が上がれば積極的に使うんだ。だけど、郵便ほどの信頼性は全く無いわ。

ファミマいってヤマト運輸送るなら、iPhoneとファミポートではこBOON申し込もう!

愚痴

持ち込み割引という表現を集荷100円に変えて欲しい。
ヤフオク出品者・ネットショップ側からすると100円呑み行為できて美味しすぎるな。
買う方としては納得がいかない。
売る側としては輸送会社が運送会社が営業に来て大口値引きしてくれる。また毎日集荷来てくれるので問題ない。

だからこそ大口割引業者が正規運賃とるのは如何なかと思うこともある。


クロネコメールはトラブルが減ればこんなに素晴らしいサービスはない。信書とか意味がわからない。使う側には全く関係がない。
たとえば履歴書は信書では無いようだしクロネコメールで送ってもいいんじゃないかな。
履歴書送るのに300円の簡易記録は学生にかわいそうだよ。

はこBOON以前は伊藤忠はYahooゆうパックをやってたんだけど、はこBOONの料金設定見てると、Yahooゆうパックに対するYahoo & 伊藤忠の怨念すら感じる。提携解消を一方的に郵政側から言い出したんじゃなかろうか



*1:いままで知らずに送ってたこと何度もある。今回複数個割引を知って愕然とした

ruby でコマンドをエスケープする方法

Rubyでコマンドを実行しようとすると、困ることがある。

これははエラーになる。

#!/usr/bin/env ruby
`md5sum 2012-06-04(cygwin).key` 

正しくは次の形

#!/usr/bin/env ruby
` md5sum 2012-06-04\(cygwin\).key `

カッコはエスケープしてないと解釈されない

だけど変数はどうする?

#!/usr/bin/env ruby
name = "プレゼン資料(cygwin),key"
` md5sum #{name}`

この場合何処でエスケープしたらいいの。。。


require 'shellwords'で解決!?

#!/usr/bin/env ruby
require 'shellwords'
name = "プレゼン資料(cygwin),key"
` md5sum #{name.shellescape}`

でも日本語が残念な感じ

日本語の扱いが残念な感じで、無理でした。


[]ハードディスク内の重複ファイルを探す。

よく同じファイルが別名で存在することがよくある!。プロジェクトのドキュメントを扱っていると、これがよくある。多人数になればなるほど、みんなが適当にバックアップ・コピー取って編集するので、同じファイルが大量に出てきて焦る。

写真も別名で出てくる定番ですね。

バックアップ的なものなバージョン管理でやればいいと思うのですが。重複ファイルが出てきてしまった以上仕方ない。重複ファイルを探して消して回るしか無い。

重複ファイルを探すスクリプト

ハードディスクの重複ファイルを探すスクリプト作った。

#!/usr/bin/env ruby
## ** coding:utf-8
#
#
dir_name = ARGV[0] if ARGV.size > 0
dirname ||="."

dirname= File.expand_path(dirname)


require 'tempfile'
tmpfile = Tempfile.new("md5_sum")
IO.popen("find '#{dirname}'  -type f -exec md5sum {} \\;  "){|f|
	until f.eof?
		str =  f.readline
		tmpfile.puts str
		puts str
	end
}

tmpfile.close
puts "--"*20
tmpfile.open
#ソート
#puts `sort #{tmpfile.path}`
IO.popen("sort #{tmpfile.path}"){|f|
	until f.eof?
		str =  f.readline
		tmpfile.puts str
		puts str
	end

}

puts "--"*20
tmpfile.close
list = tmpfile.open.readlines.map{|e| e.split }
hash_list = list.map{|e| e.first}

puts hash_list
puts "--"*20
dups = hash_list.uniq.select{|i| hash_list.index(i) != hash_list.rindex(i)}
puts dups
puts "--"*20
puts "重複一覧"
puts "--"*20

list.select{|e| puts e.join("\t") if dups.select{|i| e.first =~ /#{i}/}.size>0 } 

実行結果

----------------------------------------
重複一覧
----------------------------------------
b8641b41c4e8d81aaab2daf84898391d	/Users/takuya/Desktop/構造体、共用体、列挙	2.txt
b8641b41c4e8d81aaab2daf84898391d	/Users/takuya/Desktop/構造体、共用体、列挙	3.txt
b8641b41c4e8d81aaab2daf84898391d	/Users/takuya/Desktop/構造体、共用体、列挙	4.txt
b8641b41c4e8d81aaab2daf84898391d	/Users/takuya/Desktop/構造体、共用体、列挙	5.txt
b8641b41c4e8d81aaab2daf84898391d	/Users/takuya/Desktop/構造体、共用体、列挙	6.txt
b8641b41c4e8d81aaab2daf84898391d	/Users/takuya/Desktop/構造体、共用体、列挙.txt


全てをRubyでやろうとすると md5 digest や IO が時間がかかる。時間もったいない。

2018-08-03

記述ミスを修正

rubyの tempfileの ファイル名

RubyにはTempfileという便利なクラスがある。これは次のように定義されていて。

class Tempfile < DelegateClass(File)

end

作成されたファイル名

これで定義されているのでファイル名は

TempFile#path 

で取得することが出来る

ただし、close前は無理

f = Tempfile.new("test")
f.puts ....
f.close 


Tempfile#closeしないと中身取れなかった。どのタイミングでファイルに書き込まれるかわからない。flush/closeのタイミングで書きだされた以降しか取れないので注意

ブロックで使う場合は open

 Tempfile.open("test"){|f|
f.puts ....
}

2015-04-20

若干の記述を変更

DelegateClassってなに?

ところで、DelegateClassってなに?みたところ委譲のDelagete パターンに見えるけど。。。

Rubyのシグナル番号を指定してプロセスグループを殺す

Rubyでプロセスを殺すことができる

Process.kill("KILL", 123)

で出来るのだけど。プロセスグループをそのままKILLしてみたかった。

Process.kill(signal, pid ... )

pid で指定されたプロセスにシグナルを送ります。signal はシグナル番号か名前(文字列またはSymbol)で指定します。
負の値を持つシグナル(あるいはシグナル名の前に-)もしくは 負の値を持つプロセス番号を与えるとプロセスではなくプロセスグループにシグナルを送ります。 負の値のプロセス番号はプロセスグループ番号を符号反転したものと見なされます。
全てのシグナル送信に成功した場合、指定した pid の数を返します。 失敗した場合は例外 Errno::EXXX が発生します。
存在しないシグナルを指定した場合は、例外 ArgumentError が発 生します*2
trapも参照してください。

Process.kill(signal, pid ... )

シグナル番号ってどれ?

負の値を持つシグナル(あるいはシグナル名の前に-)もしくは 負の値を持つプロセス番号を与えるとプロセスではなくプロセスグループにシグナルを送ります。

シグナル番号について

Signal.list 
>> pp Signal.list  #=> nil
{"ILL"=>4,
 "STOP"=>19,
 "SEGV"=>11,
 "URG"=>23,
 "ALRM"=>14,
 "PIPE"=>13,
 "QUIT"=>3,
 "PWR"=>30,
 "IO"=>29,
 "TTOU"=>22,
 "CONT"=>18,
 "SYS"=>31,
 "INT"=>2,
 "WINCH"=>28,
 "KILL"=>9,
 "USR2"=>12,
 "USR1"=>10,
 "VTALRM"=>26,
 "TSTP"=>20,
 "FPE"=>8,
 "XFSZ"=>25,
 "XCPU"=>24,
 "BUS"=>7,
 "EXIT"=>0,
 "TRAP"=>5,
 "HUP"=>1,
 "POLL"=>29,
 "PROF"=>27,
 "TTIN"=>21,
 "CLD"=>17,
 "CHLD"=>17,
 "TERM"=>15,
 "ABRT"=>6,
 "IOT"=>6}

と定義されています。

Rubyでパイプを作る(atコマンドの例)

Rubyはパイプを作って、コマンドの標準入力になにか書き込むことが出来る

atコマンドになにか書き込む例。

IO.popen("at -q r '#{(Time.now+60).strftime("%H:%M %d.%m.%Y")}'","w"){|io| 
io.puts "#/bin/sh 
/etc/init.d/apache reload
"
;}

grep コマンドに書き込む例

IO.popen("grep test ","w"){|io| io.puts "this
is 
a 
test1
pip
command"
;}
#=> test1

便利ですね。


rubyで標準入力にデータを書き込んでいる。これが出来ると意外と便利なんですよ。
ruby出やると重い処理をC言語で書いたコードに任せたり。
その他のプログラムをパイプでつないで再利用出来る。

Linuxなら当たり前にできるんだけど。
意外とこういうのを手抜きできない正確なので苦労してた。ガッツリRuby言語で書いててなんか無駄な時間過ごしこと多いです。

手早く Radikoを録音する (Mac OSX / Linux)

RadikoLinuxやMacでパパっと録音する。

録音するコマンドはgithubにサンプルがある。→https://gist.github.com/raw/875864

Linuxの場合

apt-get install rtmpdump
sudo apt-get install libfreetype6-dev libgif-dev libjpeg62-dev libt1-5 zlib1g-dev libavifile-0.7-dev libart-2.0-dev build-essentials
wget http://www.swftools.org/swftools-0.9.0.tar.gz
tar xzfv swftools-0.9.0.tar.gz 
cd swftools-0.9.0/
./configure;make;sudo make install;
cd ..
wget -c -O rec_radiko.sh https://gist.github.com/raw/875864
chmod +x rec_radiko.sh
./rec_radiko.sh

mac OSX の場合

brew update
brew install rtmpdump
brew install swftools
wget -c -O rec_radiko.sh https://gist.github.com/raw/875864
chmod +x rec_radiko.sh
./rec_radiko.sh

windowsの場合

cygwin 使おう!!

Xpathのtext()を実現するjquery

jQueryXpathを通そうとしたら、通らなかった。テキストノードが文字列まるまるを持つってどうやるの?


:contains だからね!

Xpath

//div.title[text()='test’]

jQuery

$("div.title:contains('test')")

Nokogiri 別解

nokogiriでxpathが通るんだけど、contains が何をやってるか明確にするために、あえてRubyで!

doc.search("div.title").select{|e| e.text =~ /test/}

Xpath便利ですね

Xpathそれなりに使えるんだよね。XpathもHTML5とか名乗って正式ににもっと「堂々と」使えるようにならな無い?

あとマニュアル欲しい。xpathのパターン例足りない。。