mixiのデザイン変更で、PlaggerのプラグインCustomFeed::MixiDiarySearchが機能しなくなっています。CustomFeed::MixiDiarySearchは正規表現でスクレイプしているのですが、それだとHTMLに合わせて更新するのが面倒です。そこで、Web::Scraperを使ってスクレイプする、ほぼ互換の野良プラグインを作りました。正規表現マッチをscrape()メソッドに置き換えただけですが。 追記2009-04-18:githubの自分ブランチに入れました。 package Plagger::Plugin::CustomFeed::MixiDiarySearch::Scraper; use strict; use base qw( Plagger::Plugin ); use Encode; use Plagger::UserAgent; use Pl
■ [Plagger][Wassr]Publish::Wassr をホゲってワサチャンネルに投稿できるようにした 今まで Plagger 使って Wassr に投稿する時には Publish::Twitter のエンドポイントをテキトーに書き換えて使ってたんだけど、チャンネルに投稿するには結構改造しないと駄目かなーって考えていたところに、Wassr 用の API に対応した Net::Wassr と Plagger 用の Publish::Wassr というのを CodeReposで見つけた。 が、CodeRepos においてあった Publish::Wassr はチャンネルには対応していなかったので、Plagger 4級の腕でテキトーに改造してみた。 http://coderepos.org/share/changeset/16821 変更点はなんてことなくて、YAMLの設定から cha
kuさんが面白い物見つけてくれました。 mixi for iPhoneから発掘されたmixi日記投稿用API « ku iPhoneからぜんぜん日記を書く手段がなかったらmixiから、mixi for iPhoneという日記を書いたりするiPhoneアプリが公開されました! 新しいアプリに新しいAPI、日記が投稿できるアプリなら日記投稿用のAPIというわけでmixiのあしあとAPI発掘と同じように掘り起こして見つけました。 ほかのAPIと同様、認証はWSSEでatomPubで日記を書くことができるようになっていました。エンドポイントはhttp://mixi.jp/atom/diary/member_id=mixiIDです。 http://ido.nu/kuma/2008/07/30/digging-mixi-for-iphone-application-and-new-api-for-po
http://yoshiori.org/blog/2006/10/plaggerldropml.php モジュールを作って対応されているが、Cookie使えばSubscription::OPMLそのままでいけるんじゃね?と思ってやってみた。 w3m でログインしてそのCookieを使おうと思ったが、はじかれる。 w3m の UserAgent を「Plagger/0.7.12 (http://plagger.org/)」にしてログイン。 非常にBadっぽいがこれでいけた。 global: user_agent: cookies: file: /home/user/.w3m/cookie plugins: - module: Subscription::OPML config: url: http://reader.livedoor.com/export/opml - module: Pub
Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at
Powered by Trac 0.9.3 By Edgewall Software. Visit the Trac open source project at http://trac.edgewall.com/
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
確実に私しか使わないと思うけど…。 Item - データベース: ISBN Scraper - wedata に登録してある ISBN を抽出する XPath をテストするスクリプトを書いた。 Wedata からデータ(URL, XPath, SampleURL, SampleISBN)を取得 SampleURL なサイトの HTML を取得 HTML から XPath を評価して ISBN を取得 ISBN と SampleISBN が同じであるかチェック 結果を YAML 形式で出力 Plagger で YAML から RSS に変換して Gmail する これを毎朝 cron で実行させておくと、↓こんなメールが届くのでながめてにやにやすることができる! #!/usr/bin/perl # isbn scraper checker use strict; use warnings;
retlet.net - OpenFL + Store::Fastladderで広告エントリーの削除と全文取得をするのブクマコメントでotsuneさんに SITEINFOはwedata版に書き換えたほうがよさそう と言われて直そう、として挫折したところに速攻fubaさんが対応してくれたので適用した。 WebService::Wedataをダウンロードしてインストール。 $ perl MakeFile.PL $ sudo make $ sudo make test $ sudo make install yamlのPlugin名を修正。 - - module: Filter::EntryFullText::SiteInfo + - module: Filter::EntryFullText::LDRFullFeed
せっかくPlagger通してるんだからやってみた。 yamlはこんな感じ。 plugins: - module: Subscription::LivedoorReader config: username: USERNAME password: PASSWORD - module: Filter::StripRSSAd - module: Filter::EntryFullText::SiteInfo config: impersonate: 0 force_upgrade: 1 - module: Store::Fastladder config: sync_rate: 1 connect_info: - dbi:mysql:fastladder_production - root - on_connect_do: - SET NAMES utf8 member_id: 1 LDR Fu
lib/Plagger/Plugin/Filter/EntryFullText/LDRFullFeed.pm http://b.hatena.ne.jp/otsune/20080530#bookmark-8776502 SITEINFOはwedata版に書き換えたほうがよさそう とのことなので書き換えた。HTML::Featureを使ってもっと便利にしたかったのだけど、UAがうまく置き換えられない問題とかが残ってるのであいかわらずEntryFullTextを継承。なのでPPF::EFT::SiteInfoのEFTのyamlがうまく一緒に使えない問題が残ってます。あとPPF::EFT::SiteInfoも野良siteinfoがあればまだ使えるのでこっちは名前かえました。Webservice::WedataはkoyachiさんのところからとってきてくださいWebService::Wedataも
http://logpi.jp/ からtwitterには送れるけどtwitterクライアントとかAPI使いたいので逆にtwitterからlogpiに同期できるようにPublish::Logpiを捏造してみた Publish::Logpi codecheck.in Publish::Twitterまるパクりしたので文字数制限してるけど、いらないかもしれない logpi.tt codecheck.in twitter2logpi.yaml codecheck.in config.yamlは↑な感じでCustomFeed::TwitterじゃなくSubscription::Configでfeed読んでる 追記:CustomFeed::Twitterはfriend_timelineだった Net::Twitterに自分のarchive用のsubもないっぽい 追記:Filter::Rule Dedu
既存のPluginじゃ上手く処理できないんだけど、新しくPlugin書くほどでもないよなーって時に。 package Plagger::Plugin::Expression; use strict; use base qw( Plagger::Plugin ); sub init { my $self = shift; $self->SUPER::init(@_); $self->rule_hook($self->conf->{rule_hook}); my $hooks = $self->conf->{hooks} or return; $hooks = [ $hooks ] unless ref $hooks eq 'ARRAY'; for my $hook (@$hooks) { my $callback = sub { eval $hook->{expression}; Plagg
通常の手順で、Plaggerモジュールをインストールします。 cpan> install Plagger 関連モジュールについて、インストールの要否を聞かれますが、基本的にデフォルトのまま進めます。Plaggerが使えるようになって、個別のプラグインに興味が出てきてから、それが必要とするモジュールが不足していれば追加インストールすればよいでしょう。 上記でインストールができるかというと、実は微妙です。非常に多くのモジュールに依存しており、環境によってはインストールがスムーズに行かないモジュールも含まれています。ケースが多く解決も難しいことがしばしばであるため、この場合は各自のPerl力で力任せに解決するか、不運と思って様子見することになりそうです。 以前にはバッドノウハウとしか言えない手順がいろいろとありましたが、id:Charsbarさんが関連モジュールをまとめたPPMリポジトリを用意し
私も仕事で使っている Ubuntu Linux の最新版 8.04 の RC 版がリリースされました。 http://www.ubuntu.com/testing/804rc 大きな問題がなければ 2008/04/24(木)に正式版がリリースされるそうです。今回のバージョンは、デスクトップ版で3年、サーバー版で5年の長期サポートがついているので、折を見て入れ替えようと思っています。 デスクトップ版はライブCD になっているので、簡単に試してみることができます。 サーバー版は、とりあえず VMWare で動かしてみて検証するといいと思います。必要最低限のソフトしか入っておらず、15分で LAMP / LAPP 実行環境が構築できるので、さくっと何か作りたいときにぴったりです。ちなみに Catalyst を使いたければ、 $ sudo apt-get install libcatalyst-*
PC日記のfalseさんがパッチを公開されていたので、とりあえず問題なさげな部分のみ実装して本家にコミットしておきました。具体的には、 タイムゾーンの設定を追加 aggregate_feedをまるっとコピーするのは管理が面倒なので、共通化できるエントリ登録部分をadd_entryという関数にくくりだし aggregate_bbs_feedを新設してBBSのアイテムひとつずつにフィードを用意 既存のユーザを驚かせたくないので、aggregate_bbs_feedはsplit_bbs_feedという設定を明示的にtrueにしたときのみ有効にしてあります。 plugins: - module: CustomFeed::MixiScraper config: email: your@email password: your_password fetch_body: 1 fetch_comment:
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く