Hatena::Groupperlmemo

Perlメモ

2008年09月18日 より開始
最新5件(RSS 2.0)
古いモジュールの更新

Plagger(Fedora10)
Plagger(Ubuntu9.04)

CPAN::Mini

Remedie(Ubuntu 9.04、Vine4.9(5α)、Fedora11Preview)
Remedie(Fedora10) 見れたサイトまとめ
編集

2008-12-07

新はてなブックマークのお気に入られの数を取得

| 新はてなブックマークのお気に入られの数を取得 - Perlメモ を含むブックマーク はてなブックマーク - 新はてなブックマークのお気に入られの数を取得 - Perlメモ 新はてなブックマークのお気に入られの数を取得 - Perlメモ のブックマークコメント

はてなブックマーク - naoyaのブックマーク

#!/usr/bin/perl
use strict;
use warnings;
use LWP::Simple;

my $url = 'http://b.hatena.ne.jp/naoya/';
my @data = split(/\n/, get($url));  #改行で分解して @dataへいれる

foreach (@data)         # ループ
{
  if(/follower">/){
    m/follower">(.+?)<\/a>/i;
    print $1;
  }
}

$ perl test.pl


はてなブックマーク被お気に入り登録数 ランキング

2008-10-24

はてなブックマーク被お気に入り登録数 ランキング

| はてなブックマーク被お気に入り登録数 ランキング - Perlメモ を含むブックマーク はてなブックマーク - はてなブックマーク被お気に入り登録数 ランキング - Perlメモ はてなブックマーク被お気に入り登録数 ランキング - Perlメモ のブックマークコメント

2016/03/15

http://perlmemo.g.hatena.ne.jp/fedora9/20160315/p1


今回(2016/03/15),前回(2008/12/07)

順位前回URL被お気に入り数
11http://b.hatena.ne.jp/naoya/4,604
25http://b.hatena.ne.jp/otsune/3,187
33http://b.hatena.ne.jp/jkondo/2,614
46http://b.hatena.ne.jp/miyagawa/2,646
54http://b.hatena.ne.jp/kanose/2,508
68http://b.hatena.ne.jp/Hamachiya2/2,203
716http://b.hatena.ne.jp/kensuu/2,141
811http://b.hatena.ne.jp/amachang/2,119
99http://b.hatena.ne.jp/fromdusktildawn/1,822
1012http://b.hatena.ne.jp/REV/1,721
117http://b.hatena.ne.jp/finalvent/1,621
122http://b.hatena.ne.jp/umedamochio/1,582
1324http://b.hatena.ne.jp/secondlife/1,335
1421http://b.hatena.ne.jp/maname/1,229
1527http://b.hatena.ne.jp/antipop/1,112
1614http://b.hatena.ne.jp/laiso/885
1726http://b.hatena.ne.jp/netafull/830
1825http://b.hatena.ne.jp/kanimaster/812
1922http://b.hatena.ne.jp/nitoyon/792
2020http://b.hatena.ne.jp/wacky/777
2141http://b.hatena.ne.jp/yto/747
2223http://b.hatena.ne.jp/lovelovedog/726
2331http://b.hatena.ne.jp/kawasaki/719
2418http://b.hatena.ne.jp/higepon/693
2565http://b.hatena.ne.jp/kusigahama/610
2629http://b.hatena.ne.jp/nobody/598
2717http://b.hatena.ne.jp/ekken/597
2844http://b.hatena.ne.jp/tsupo/550
2919http://b.hatena.ne.jp/gotanda6/540
3057http://b.hatena.ne.jp/nisemono_san/535
3136http://b.hatena.ne.jp/hatayasan/483
3228http://b.hatena.ne.jp/jazzanova/450
3345http://b.hatena.ne.jp/umeten/459
3451http://b.hatena.ne.jp/fladdict/443
3548http://b.hatena.ne.jp/youpy/438
3638http://b.hatena.ne.jp/kowagari/425
3740http://b.hatena.ne.jp/suVene/420
3832http://b.hatena.ne.jp/essa/408
3964http://b.hatena.ne.jp/asobi/354
4060http://b.hatena.ne.jp/hiromark/349
4135http://b.hatena.ne.jp/KGV/316
4255http://b.hatena.ne.jp/matakimika/315
4356http://b.hatena.ne.jp/TakahashiMasaki/313
4437http://b.hatena.ne.jp/another/307
4542http://b.hatena.ne.jp/mind/296
4653http://b.hatena.ne.jp/wetfootdog/296
4766http://b.hatena.ne.jp/Erlkonig/284
4861http://b.hatena.ne.jp/rAdio/283
4933http://b.hatena.ne.jp/kurimax/279
5054http://b.hatena.ne.jp/R30/278
5149http://b.hatena.ne.jp/zonia/275
5252http://b.hatena.ne.jp/acqua_alta/263
5358http://b.hatena.ne.jp/xx-internet/262
5434http://b.hatena.ne.jp/sweetlove/251
5567http://b.hatena.ne.jp/stella_nf/244
5646http://b.hatena.ne.jp/sirouto2/238
5739http://b.hatena.ne.jp/chepooka/231
5847http://b.hatena.ne.jp/amiyoshida/232
5959http://b.hatena.ne.jp/natu3kan/230
6050http://b.hatena.ne.jp/lsty/222
6162http://b.hatena.ne.jp/roku666/200
6269http://b.hatena.ne.jp/swan_slab/124

今回(2008/12/07),前回(2008/10/24) 約43日

順位前回前々回URL被お気に入り数前回増減
111http://b.hatena.ne.jp/naoya/16061443163
222http://b.hatena.ne.jp/umedamochio/1197113364
333http://b.hatena.ne.jp/jkondo/99991089
444http://b.hatena.ne.jp/kanose/83773998
577http://b.hatena.ne.jp/otsune/738574164
666http://b.hatena.ne.jp/miyagawa/71361499
755http://b.hatena.ne.jp/finalvent/68863850
81010http://b.hatena.ne.jp/Hamachiya2/609410199
9929http://b.hatena.ne.jp/fromdusktildawn/54044991
1088http://b.hatena.ne.jp/HiromitsuTakagi/53948554
111650http://b.hatena.ne.jp/amachang/515295220
121111http://b.hatena.ne.jp/REV/44437074
131314http://b.hatena.ne.jp/brazil/41031397
14129http://b.hatena.ne.jp/laiso/37633541
151426http://b.hatena.ne.jp/ululun/36530956
161945http://b.hatena.ne.jp/kensuu/34627076
171715http://b.hatena.ne.jp/ekken/33229240
181813http://b.hatena.ne.jp/higepon/32928445
191517http://b.hatena.ne.jp/gotanda6/32329528
202227http://b.hatena.ne.jp/wacky/32024278
213572http://b.hatena.ne.jp/maname/30321885
225471http://b.hatena.ne.jp/nitoyon/297170127
232116http://b.hatena.ne.jp/lovelovedog/29226131
242834http://b.hatena.ne.jp/secondlife/28422658
252341http://b.hatena.ne.jp/kanimaster/28024040
262012http://b.hatena.ne.jp/netafull/2782708
272430http://b.hatena.ne.jp/antipop/26823830
282725http://b.hatena.ne.jp/jazzanova/26222735
295036http://b.hatena.ne.jp/nobody/25317578
303275http://b.hatena.ne.jp/yumizou/24222022
313732http://b.hatena.ne.jp/kawasaki/24021426
322919http://b.hatena.ne.jp/essa/23822612
332621http://b.hatena.ne.jp/kurimax/2372307
342524http://b.hatena.ne.jp/sweetlove/2362324
353338http://b.hatena.ne.jp/KGV/23422014
364265http://b.hatena.ne.jp/hatayasan/23419737
373433http://b.hatena.ne.jp/another/23321914
383022http://b.hatena.ne.jp/kowagari/2322239
393123http://b.hatena.ne.jp/chepooka/23122110
403839http://b.hatena.ne.jp/suVene/23021119
414946http://b.hatena.ne.jp/yto/22617650
423635http://b.hatena.ne.jp/mind/22621511
434052http://b.hatena.ne.jp/b4-tt/21919920
445267http://b.hatena.ne.jp/tsupo/21617343
454447http://b.hatena.ne.jp/umeten/21518827
463944http://b.hatena.ne.jp/sirouto2/2052005
474128http://b.hatena.ne.jp/amiyoshida/2031985
485963http://b.hatena.ne.jp/youpy/20014753
494540http://b.hatena.ne.jp/zonia/20018713
504348http://b.hatena.ne.jp/lsty/1961915
514743http://b.hatena.ne.jp/fladdict/1901837
525164http://b.hatena.ne.jp/acqua_alta/19017515
534649http://b.hatena.ne.jp/wetfootdog/1891863
544842http://b.hatena.ne.jp/R30/1831785
555351http://b.hatena.ne.jp/matakimika/1791727
565553http://b.hatena.ne.jp/TakahashiMasaki/17516114
576455http://b.hatena.ne.jp/nisemono_san/16813038
585662http://b.hatena.ne.jp/xx-internet/1681608
595758http://b.hatena.ne.jp/natu3kan/1671589
606254http://b.hatena.ne.jp/hiromark/15813424
616059http://b.hatena.ne.jp/rAdio/15714314
625860http://b.hatena.ne.jp/roku666/1531494
636170http://b.hatena.ne.jp/Masao_hate/14813810
646557http://b.hatena.ne.jp/asobi/14112021
656873http://b.hatena.ne.jp/kusigahama/14011525
666368http://b.hatena.ne.jp/Erlkonig/1391336
676669http://b.hatena.ne.jp/stella_nf/1221184
686756http://b.hatena.ne.jp/gachapinfan/1201182
696974http://b.hatena.ne.jp/swan_slab/1001000

はてなブックマーク - blogとWikiは個人サイト構築の両輪・・・ならSBMはエンジン? の大旦那の被お気に入り登録数を調べてみた。

use strict;
use warnings;
use LWP::Simple;
use URI;

open(IN,"urllist.txt");
my $count = 1;
while(<IN>) {
  chomp;  #改行文字を削除
  my $favoritecount = &GetFavoriteCount($_);  #被お気に入り登録数を取得
  print "|" . $count . "|" . $_ . "|" . $favoritecount . "|\n";
  $count++;
}
close(IN);

sub GetFavoriteCount() {  #はてなブックマーク被お気に入り登録数を取得
  my $url = $_[0];
  my @data = split(/\n/, get($url));  #改行で分解して @dataへいれる
	
  foreach (@data)         # ループ
  {
    if(/follower">/){
      m/follower">(.+?)<\/a>/i;
      return $1;
    }
  }
}
# 旧はてなブックマーク用なのでエラー
use strict;
use LWP::Simple;
use Web::Scraper;
use URI;

open(IN,"urllist");
my $count = 1;
while(<IN>) {
  chomp;  #改行文字を削除
  my $favoritecount = &GetFavoriteCount($_);  #被お気に入り登録数を取得
  print $count . "," . $_ . "," . $favoritecount . "\n";
  $count++;
}
close(IN);

sub GetFavoriteCount() {  #はてなブックマーク被お気に入り登録数を取得
        my $url = $_[0];
	my $scraper = scraper {  # myFavoriteCount という名前で取るスクレイパーを作成
	    process '//li[ @class="favorited" ]', 'myFavoriteCount' => 'TEXT';
	};
	
	my $uri = new URI($url);
	my $res = $scraper->scrape($uri); # 先ほどのスクレイパーに渡す。(スクレイピングされる)

        return $res->{myFavoriteCount};
}

urllist.txt が必要

$ perl test.pl > out


$ vi out

:%s/,h/|h/g

,h を |h に置換


:%s/¥/,/¥/|/g

/, を /| に置換 (/ は ¥/ でエスケープ)

vim置換


vimマクロ

qa で記録開始

q で記録終了

@a で実行

10@a で10回実行


urllist.txt 作成

リンク抽出


csvの内容をペーストしてはてなテーブル記法に変換

はてなテーブルエディター  リンク切れ

はてなテーブルエディターを作りました

2008-10-10

はてなブックマーク合計数取得(CGIの引数で)

| はてなブックマーク合計数取得(CGIの引数で) - Perlメモ を含むブックマーク はてなブックマーク - はてなブックマーク合計数取得(CGIの引数で) - Perlメモ はてなブックマーク合計数取得(CGIの引数で) - Perlメモ のブックマークコメント

http://www.hatena.ne.jp/&http://www.yahoo.co.jp/

#!/usr/local/bin/perl
#http://tophatenar.com/

use strict;
use warnings;
use XMLRPC::Lite;

our $EndPoint = 'http://b.hatena.ne.jp/xmlrpc';



my $formin = $ENV{'QUERY_STRING'};
my @indata = split(/&/,$formin);




print "Content-type: text/html\n";
print "\n";
print "<html>\n";
print "<head>\n";
print "<title>はてなブックマーク合計数取得API</title>\n";
print "</head>\n";
print "<body bgcolor=\"#ffcccc\">\n";



foreach(@indata) {
    my $count = XMLRPC::Lite
        ->proxy($EndPoint)
        ->call('bookmark.getTotalCount', $_)
        ->result;

    printf("%d,%s<br>\n", $count, $_);
}


print "</body>\n";
print "</html>\n";

はてなブックマーク件数取得(CGIの引数で)

| はてなブックマーク件数取得(CGIの引数で) - Perlメモ を含むブックマーク はてなブックマーク - はてなブックマーク件数取得(CGIの引数で) - Perlメモ はてなブックマーク件数取得(CGIの引数で) - Perlメモ のブックマークコメント

http://www.hatena.ne.jp/&http://www.yahoo.co.jp/

#!/usr/local/bin/perl
#http://d.hatena.ne.jp/keyword/%a4%cf%a4%c6%a4%ca%a5%d6%a5%c3%a5%af%a5%de%a1%bc%a5%af%b7%ef%bf%f4%bc%e8%c6%c0API

use strict;
use warnings;
use XMLRPC::Lite;

our $EndPoint = 'http://b.hatena.ne.jp/xmlrpc';

my @urls = (
	#'http://www.hatena.ne.jp/',
    #'http://d.hatena.ne.jp/',
    #'http://blog.goo.ne.jp/',
);


my $formin = $ENV{'QUERY_STRING'};
my @indata = split(/&/,$formin);


push(@urls,$_) for @indata;
#push(@urls,'http://www.hatena.ne.jp/');
#push(@urls,'http://d.hatena.ne.jp/');

my $map = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getCount', @urls)
    ->result;

print "Content-type: text/html\n";
print "\n";
print "<html>\n";
print "<head>\n";
print '<meta http-equiv="Content-Type" content="text/html; charset=shift-jis">' . "\n";
print "<title>はてなブックマーク件数取得API</title>\n";
print "</head>\n";
print "<body bgcolor=\"#ffcccc\">\n";

#print "http://www.hatena.ne.jp/ のブックマーク件数<br>\n";

printf("%d,%s<br>\n", $map->{$_},$_) for @urls; # $map->{$_} = 1813


print "</body>\n";
print "</html>\n";

beginners CGI  - CGI に引数を付けて値を渡す -


はてなブックマーク件数取得APIとは - はてなキーワード

2008-09-18

はてなブックマーク合計数取得API

| はてなブックマーク合計数取得API - Perlメモ を含むブックマーク はてなブックマーク - はてなブックマーク合計数取得API - Perlメモ はてなブックマーク合計数取得API - Perlメモ のブックマークコメント

jkondoさんのページ全体

http://hiroyuki12.sakura.ne.jp/hatenabookmarkTotalCount2.cgi

#!/usr/local/bin/perl
#http://tophatenar.com/

use strict;
use warnings;
use XMLRPC::Lite;

our $EndPoint = 'http://b.hatena.ne.jp/xmlrpc';

#my @urls = (
#    #'http://d.hatena.ne.jp/',
#    'http://blog.goo.ne.jp/',
#);


#1
my $url = 'http://d.hatena.ne.jp/jkondo/';
my $jkondo = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;



print "Content-type: text/html\n";
print "\n";
print "<html>\n";
print "<head>\n";
print "<title>はてなブックマーク合計数取得API</title>\n";
print "</head>\n";
print "<body bgcolor=\"#ffcccc\">\n";


print "jkondo " . $jkondo . "<br>\n";


print "</body>\n";
print "</html>\n";

perl test.pl


いろいろ

http://hiroyuki12.sakura.ne.jp/hatenabookmarkTotalCount.cgi

はてなブックマーク件数取得APIとは - はてなキーワード

#!/usr/local/bin/perl
#http://tophatenar.com/

use strict;
use warnings;
use XMLRPC::Lite;

our $EndPoint = 'http://b.hatena.ne.jp/xmlrpc';

#my @urls = (
#    #'http://d.hatena.ne.jp/',
#    'http://blog.goo.ne.jp/',
#);


#my $url, my $count;
my $url = 'http://d.hatena.ne.jp/';
my $count = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;

#1
$url = 'http://d.hatena.ne.jp/finalvent/';
my $finalvent = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;

#2
$url = 'http://d.hatena.ne.jp/fromdusktildawn/';
my $fromdusktildawn = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;

#3
$url = 'http://d.hatena.ne.jp/naoya/';
my $naoya = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;

#4
$url = 'http://d.hatena.ne.jp/umedamochio/';
my $umedamochio = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;

#5
$url = 'http://d.hatena.ne.jp/amachang/';
my $amachang = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;

#6
$url = 'http://d.hatena.ne.jp/kanose/';
my $kanose = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;

#7
$url = 'http://d.hatena.ne.jp/essa/';
my $essa = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;

#8
$url = 'http://d.hatena.ne.jp/sirouto2/';
my $sirouto2 = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;

#9
$url = 'http://d.hatena.ne.jp/mkusunok/';
my $mkusunok = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;

#10
$url = 'http://d.hatena.ne.jp/jkondo/';
my $jkondo = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getTotalCount', $url)
    ->result;

print "Content-type: text/html\n";
print "\n";
print "<html>\n";
print "<head>\n";
print "<title>はてなブックマーク合計数取得API</title>\n";
print "</head>\n";
print "<body bgcolor=\"#ffcccc\">\n";

printf "はてなダイアリー全体  " . $count . "<br>\n";

printf "finalvent " . $finalvent . "<br>\n";
printf "finalvent " . $finalvent * 100 / $count . " %<br><br>\n";

printf "fromdusktildawn  " . $fromdusktildawn . "<br>\n";
printf "fromdusktildawn  " . $fromdusktildawn * 100 / $count . " %<br><br>\n";

printf "naoya  " . $naoya . "<br>\n";
printf "naoya  " . $naoya * 100 / $count . " %<br><br>\n";

printf "umedamochio  " . $umedamochio . "<br>\n";
printf "umedamochio  " . $umedamochio * 100 / $count . " %<br><br>\n";

printf "amachang  " . $amachang . "<br>\n";
printf "amachang  " . $amachang * 100 / $count . " %<br><br>\n";

printf "kanose  " . $kanose . "<br>\n";
printf "kanose  " . $kanose * 100 / $count . " %<br><br>\n";

printf "essa  " . $essa . "<br>\n";
printf "essa  " . $essa * 100 / $count . " %<br><br>\n";

printf "sirouto2  " . $sirouto2 . "<br>\n";
printf "sirouto2  " . $sirouto2 * 100 / $count . " %<br><br>\n";

printf "mkusunok  " . $mkusunok . "<br>\n";
printf "mkusunok  " . $mkusunok * 100 / $count . " %<br><br>\n";

printf "jkondo  " . $jkondo . "<br>\n";
printf "jkondo  " . $jkondo * 100 / $count . " %<br><br>\n";

printf "合計<br>" . $finalvent + $fromdusktildawn + $naoya + $umedamochio + $amachang + 
					$kanose + $essa + $sirouto2 + $mkusunok + $jkondo . "\n";
printf "合計<br>" . ($finalvent + $fromdusktildawn + $naoya + $umedamochio + $amachang + 
					$kanose + $essa + $sirouto2 + $mkusunok + $jkondo) * 100 / $count . "\n";					



print "</body>\n";
print "</html>\n";

$ perl test.pl > out.html

safariで開く


TopHatenar ブックマーク数ランキング

はてなブックマーク件数取得API

| はてなブックマーク件数取得API - Perlメモ を含むブックマーク はてなブックマーク - はてなブックマーク件数取得API - Perlメモ はてなブックマーク件数取得API - Perlメモ のブックマークコメント

http://www.hatena.ne.jp/ (トップページ)のブックマーク件数

指定したページのブックマーク件数を取得できます。

はてなブックマーク件数取得APIとは - はてなキーワード

#!/usr/local/bin/perl
#http://d.hatena.ne.jp/keyword/%a4%cf%a4%c6%a4%ca%a5%d6%a5%c3%a5%af%a5%de%a1%bc%a5%af%b7%ef%bf%f4%bc%e8%c6%c0API

use strict;
use warnings;
use XMLRPC::Lite;

our $EndPoint = 'http://b.hatena.ne.jp/xmlrpc';

my @urls = (
	'http://www.hatena.ne.jp/',
    #'http://d.hatena.ne.jp/',
    #'http://blog.goo.ne.jp/',
);

my $map = XMLRPC::Lite
    ->proxy($EndPoint)
    ->call('bookmark.getCount', @urls)
    ->result;

print "Content-type: text/html\n";
print "\n";
print "<html>\n";
print "<head>\n";
print '<meta http-equiv="Content-Type" content="text/html; charset=shift-jis">' . "\n";
print "<title>はてなブックマーク件数取得API</title>\n";
print "</head>\n";
print "<body bgcolor=\"#ffcccc\">\n";

printf("%d\n", $map->{$_}) for @urls;

print "</body>\n";
print "</html>\n";

JasonFoetsJasonFoets2017/01/25 04:27печать буклетаов http://wkrolik.com.ua/products/buklety