並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 492件

新着順 人気順

Web-Scraperの検索結果1 - 40 件 / 492件

  • Librahack : 容疑者から見た岡崎図書館事件

    出来事の詳細 3/13 新着図書データベースを作るためクローリング&スクレイピングプログラムを作成した ちょうどその頃、市場調査を行うためにECサイトのスクレイピングプログラムを作っていた。そのついでに、前々から構想していたLibra新着図書Webサービスを作ろうと思った。市場調査プログラムの一部をカスタマイズして、新着図書データベース作成プログラムを作った。この時、市場調査プログラムと新着図書データベース作成プログラムは同じプログラム内にあり、パラメータでアクションを指定して振り分けていた。 Webサービスを作ろうと思った動機は「なぜプログラムを作ったか」の通り。 Webサービスの概要は「どんなプログラムを作ろうとしていたか」の通り。 普段読む本を入手する流れ:1. Amazonの各カテゴリの売れ筋をチェックしてレビューを確認し読むかどうか決める(または、書評ブログや新聞などのメディアで

    • 今日のCPANモジュール(跡地) 目次

      Redirecting… Click here if you are not redirected.

      • 簡単!たった13行のコードでHTML取得&解析をするPerlスクリプト - DQNEO起業日記

        13行のコードで、Yahoo!Japanのトピックス一覧を取得する! PerlでHTML取得・解析したいときはLWP::UserAgentとHTML::TreeBuilderというのを使うと簡単にできます。 LWP::UserAgentを使うと、Webページの取得ができます。 HTML::TreeBuilderを使うと、HTMLのDOM解析ができます。 この2つのモジュールを使って、Yahoo!Japanのトピックス一覧を取得してみましょう。 コメント行と空行を除くとたったの13行です。 use strict; use warnings; use LWP::UserAgent; use HTML::TreeBuilder; # urlを指定する my $url = 'http://www.yahoo.co.jp'; # IE8のフリをする my $user_agent = "Mozilla

          簡単!たった13行のコードでHTML取得&解析をするPerlスクリプト - DQNEO起業日記
        • PythonとかScrapyとか使ってクローリングやスクレイピングするノウハウを公開してみる! - orangain flavor

          2016-12-09追記 「Pythonクローリング&スクレイピング」という本を書きました! Pythonクローリング&スクレイピング -データ収集・解析のための実践開発ガイド- 作者: 加藤耕太出版社/メーカー: 技術評論社発売日: 2016/12/16メディア: 大型本この商品を含むブログを見る 2015年6月21日 追記: この記事のクローラーは動かなくなっているので、Scrapy 1.0について書いた新しい記事を参照してください。 2014年1月5日 16:10更新: デメリットを修正しました。 以下の記事が話題になっていたので、乗っかってPythonの話を書いてみたいと思います。 Rubyとか使ってクローリングやスクレイピングするノウハウを公開してみる! - 病みつきエンジニアブログ 複数並行可能なRubyのクローラー、「cosmicrawler」を試してみた - プログラマにな

            PythonとかScrapyとか使ってクローリングやスクレイピングするノウハウを公開してみる! - orangain flavor
          • 無料Webクローラー「EasySpider」 プログラミングスキル不要、マウスクリックだけで操作可能

            このコーナーでは、2014年から先端テクノロジーの研究を論文単位で記事にしているWebメディア「Seamless」(シームレス)を主宰する山下裕毅氏が執筆。新規性の高い科学論文を山下氏がピックアップし、解説する。 Twitter: @shiropen2 シンガポール国立大学と中国の浙江大学に所属する研究者らが発表した論文「EasySpider: A No-Code Visual System for Crawling the Web」は、Excelを使用するように視覚的にWebスクレイピングタスクを設計し、実行できるカスタマイズ可能なWebクローラーシステムを提案した研究報告である。公式ページはこちら。 このシステムは、マウス操作のGUI(Graphical User Interface)を使用して提供されており、コーディングの経験がなくても使えるため、ノンプログラマーでも簡単にタスクを設

              無料Webクローラー「EasySpider」 プログラミングスキル不要、マウスクリックだけで操作可能
            • WebスクレイピングライブラリGoutteで遊んでみる - hnwの日記

              新年あけましておめでとうございます。今年もボチボチやっていきます。 本稿ではPHP製のWebスクレイピングライブラリGoutteを紹介します。 Goutte(グット)とは Goutteは必要十分な機能を持ったWebスクレイピングライブラリです。そもそもWebスクレイピングというのは、外部Webページから必要なデータを取ってくるくらいの意味です。つまり、GoutteはWebスクレイピングを簡単に行う道具だと考えればいいでしょう。 具体的には、GoutteはWebクローラとHTMLパーサを組み合わせたようなものです。Cookieやフォームの扱いなどWebブラウザとしての機能は一通り揃っていますし、CSS風の要素指定もできるなど、機能面では他のライブラリと遜色ないように感じます。 さらに僕個人がGoutteに期待している点は、安定性とロングサポートです。Goutteは主要機能をSymfony2お

                WebスクレイピングライブラリGoutteで遊んでみる - hnwの日記
              • PHPでのスクレイピングやDOM操作をjQueryっぽく超簡単便利にできる「phpQuery」:phpspot開発日誌

                phpmaster | Server-Side HTML Handling Using phpQuery PHPでのスクレイピングやDOM操作をjQueryっぽく超簡単便利にできる「phpQuery」。 紹介記事を読んで使ってみました。 phpQuery はjQueryのPHP版でDOMの操作をjQueryっぽくできるライブラリです。 HTMLのスクレイピングはもちろん、HTMLを追加したり要素に属性を追加等のDOMを操作も簡単に行えます。 jQueryの便利さがPHP上でも十分に使えますので知っておくと確実に面倒な処理を楽に書けるようになるでしょう。 スクレイピング HTMLのスクレイピングをする場合には超簡単かつ、jQueryを使ったことがある方なら抵抗なくすぐに習得できます。 ちょっとコードを書いて実験してみました。 と書くと <div id="two"></div>の中身である t

                • Firebugクックブック #1 - bits and bytes

                  最近の中学生のはじめてのプログラミング言語がJavaScriptだったりするこの時代、最も使いやすいJavaScriptの実行環境であるFirebugは現代のコマンドラインです。UNIXコマンドラインでgrepやuniqを使って、日常の細々した処理を行うのと同じようにFirebugとjavascriptを使いこなせると、日常作業のちょっとしたことをさくっとこなすことができます。ちょっとした作業だから手作業でやってもいいけど自動でやればミスったりしないし、気分的には楽なので自動でやりたい、という作業がけっこうないでしょうか。例えば、ページの中の特定の部分の文字列をリストにしてテキストファイルに保存したい、とか。 そこで今回は私が普段よくやっている単純作業をFirebug+javascriptでさくっとかたづける方法を2回にわけてご紹介します。 ページの中からテキストや属性の値を拾う ページの

                  • 「PHPなめんな」と「(Perl|Python|Ruby)をなめんな」の違い : 404 Blog Not Found

                    2008年01月29日16:00 カテゴリLightweight Languages 「PHPなめんな」と「(Perl|Python|Ruby)をなめんな」の違い Matzさんの意見に、想定内の反応が返って来ている。 Matzにっき(2008-01-26) - [言語] Attacking PHP PHPがいかに駄目な言語か、という話。 どの言語で書いてもおかしなコードを書く奴は書く。perlでもjavaでもrubyでも、どの言語で書いてもSQLインジェクションやらXSS脆弱性やらを作りこむ奴は作りこむ。ただそれだけの話というか、別な話だろう。 両方とも事実だし、foo言語のuserがbar言語がいかに駄目かを語るというのは有史以前(コンピューター言語以前に自然言語でもある)からの話題なのだが、しかし"PHP sucks"には他とかなり異なる点が一つあるように見受けられる。 それは、PHP

                      「PHPなめんな」と「(Perl|Python|Ruby)をなめんな」の違い : 404 Blog Not Found
                    • Webスクレイピングとは?Pythonで始めるWebスクレイピング実践・活用法 - RAKUS Developers Blog | ラクス エンジニアブログ

                      はじめに Webスクレイピングの基本事項 Webスクレイピング(Scraping)とは Webスクレイピングの活用シーン Webスクレイピングの基本的な仕組み Webスクレイピングの注意事項 取得先への攻撃とみなされたり、規約違反や、著作権法違反に問われることもある 取得先の変更に影響を受ける 取得先がAPIを公開しているならそちらを活用する方が良い Webスクレイピングの実践方法 Webスクレイピングを実践するには 1. ベンダーのサービスやツールを利用する 2. 自分でプログラムを作成する なぜPythonなのか? Pythonでのスクレイピング実践方法 事前準備 BeautifulSoup4のインストール 模擬Webサイトの構築 Webサーバーを立ち上げる 初級編:特定の要素から単一の要素を抜き出す 中級編:あるページから繰り返しを伴う複数の要素を抜き出す 上級編:複数のページから複

                        Webスクレイピングとは?Pythonで始めるWebスクレイピング実践・活用法 - RAKUS Developers Blog | ラクス エンジニアブログ
                      • [O] これから15分で Remedie を始めるための資料

                        « ぎんなんの封筒チン | トップページ これから15分で Remedie を始めるための資料 [Perl] Remedieを使い始めたので、さっそく手順をまとめました。 この資料を15分くらいかけて上から下まで読み、 Mac OSX やDebian Linuxにインストールすると、 割とあっさり、Remedieが動かせると思います。 Remedieとは Remedie は Perl で書かれたプラガブルな メディアセンターアプリケーションです。 Plaggerを生んだ、miyagawaさんによるアプリです。 - Plagger - Trac -- http://plagger.org/trac Remedieに、さまざまな動画ファイルの更新情報を登録することで Remedieは、自分のお気に入り動画で埋め尽くされた 自分専用の動画閲覧インターフェイスになってくれま

                        • Webスクレイピングライブラリ "Yasuri" をリリースしました - Qiita

                          はじめに こんにちは.私はWebスクレイピングが大好きなのですが、Rubyでもっと簡単にスクレイピングができればと思い、ライブラリを書いてみました. ようやくREADMEとUSAGEが書けたので公開しようと思います. ソースはGithubで公開しています. 特にドキュメントの英語が大変怪しいので、つっこみいただけると喜びます. tac0x2a/yasuri gemでも公開しているので、以下のコマンドで簡単にお試しできます. 簡単なサンプルと解説を書いてみました. Yasuriでお手軽スクレイピング よろしければ使ってみてください>< Yasuri とは Yasuri (鑢) は簡単にWebスクレイピングを行うための、"Mechanize" をサポートするライブラリです. Yasuriは、スクレイピングにおける、よくある処理を簡単に記述することができます. 例えば、 ページ内の複数のリンクを

                            Webスクレイピングライブラリ "Yasuri" をリリースしました - Qiita
                          • 岡崎市立中央図書館事件 #librahack について愛知県警に電話して聞いてみた | [ bROOM.LOG ! ]

                            ニコニコPodder iPhone/iPod/iPad対応ニコニコ動画簡単インポートツール aggregateGithubCommits GitHubレポジトリでのコミット数をAuthor/期間別に集計します probeCOCOATek 新型コロナ接触確認アプリCOCOAが配布するTEKを表示・集計 連日Twitterでは #librahack ハッシュが大盛況だが、個人的には事実関係でよく分からないことも多く明白にしたいことではあったので、直接愛知県警に電話して事情を聞いてみました。岡崎署ではなく愛知県警なのは、そちらが事件捜査の主体的な役割を担っただろうと判断したからです。 対応して頂いたのは生活経済課の方。お名前は出しません。愛知県警ではこの課がサイバー犯罪を担当しているそうです。 担当して頂いた方は割と若めで理路整然と話したいクールなタイプ。多少警戒されて話されていたのが印象によく

                            • てきとうにクリックしたらてきとうにWeb::Scraperのコードを作ってくれるWebScraper IDE - bits and bytes

                              まえに作ったWeb::Scraperのjavascriptバージョンwebscraper.jsとXPathをてきとうに作ってくれる機能を追加したwebscraperp.jsにHTMLのドキュメントから繰り返し部分をみつけてSITEINFOをつくるAutoPagerize Iteration Detectorみたいなみためをくっつけて、取り出したい部分をクリックしたらてきとうにXPathを生成してWeb::Scraperのコードにして出してくれるFirefoxのextensionを作りました。Firefox3専用です。ごめんなさい。 ダウンロード WebScraper IDE (for Firefox3) 使い方 今回もいつもお世話になっているスターバックスさんの店舗検索結果(住所・店名・条件から探す)を例に使い方をご紹介します。 WebScraper IDEをインストールするとツールメニュ

                              • ニコニコ動画をソフトバンク携帯で見られるようにしてみた - saiten@blog

                                2008/10/21 サービスとして公開しました。→[id:saiten:20081020:1224522031] ニコニコ動画モバイルという携帯からニコニコ動画を閲覧できるサービスがあるんですが、携帯3キャリアのうち、なぜかソフトバンクだけは今年の4月開始時から未だに対応していません。 私的には1日1回ランキングを一通りチェックする程度には利用しているので、これを通学の時間帯に行えたらなぁ、と思ってたんですが、なかなかそんな話が出てこない。RC2開始時には対応するだろうと思ってたんですがモバイル関連の発表すらなかったですし。 そういうわけで学園祭が終わってひと段落が着いていたのと、バイト先のネタ作りも兼ねて自分でニコニコ動画モバイルのソフトバンク版を作ってみることにしました。百聞は一見にしかず。とりあえず動画を作ってみたので見てみてください。 参考までに一応他のキャリアで見た場合の動画も

                                  ニコニコ動画をソフトバンク携帯で見られるようにしてみた - saiten@blog
                                • Web::Scraper - naoyaのはてなダイアリー

                                  Today I've been thinking about what to talk in YAPC::EU (and OSCON if they're short of Perl talks, I'm not sure), and came up with a few hours of hacking with web-content scraping module using Domain Specific Languages. 使ってみたよ! #!/usr/local/bin/perl use strict; use warnings; use FindBin::libs; use URI; use Web::Scraper; use Encode; use List::MoreUtils qw/uniq/; my $links = scraper { process 'a.key

                                    Web::Scraper - naoyaのはてなダイアリー
                                  • tokuhirom blog

                                    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

                                    • Feed43: Convert web pages into professionally looking RSS feeds.

                                      Convert web pages into professionally looking RSS feeds. Create your first RSS feed How it works | FAQ I wish all my favorite sites provided RSS feeds. Wait no longer! Create RSS feeds for all websites you care about and read them from the comfort of your feed reader. Pro tip: You can create and use your feeds for free and even without creating an account! However, registering an account will give

                                        Feed43: Convert web pages into professionally looking RSS feeds.
                                      • Perlを使って脆弱性を検証する:CodeZine

                                        はじめに 今回はXSSの脆弱性をチェックするPerlスクリプトを作成したいと思います。すべてのXSSによる脆弱性が回避できるわけではありませんが、テストコード作成のヒントになれば幸いです。 対象読者 Webアプリケーション開発者で、XSSのテストケースを作成したい方。 必要な環境 Perl 5.8以上が動作する環境。基本動作の確認はMac OS Xを利用しました。次のPerlモジュールを利用するので、あらかじめインストールしておいてください。 Template::Toolkit Web::Scraper Test::Base またCGIを使用するので、ApacheなどのCGIが実行できるWebサーバを用意してください。 解説内容 ソースコード解説 まず最初にソースコードの解説をします。 xss.pl

                                        • Big Sky :: Gistyで始めるGist/Githubのススメ

                                          最近Githubをよく使っているのですが、どうしてもGithubといえばプロジェクト管理なイメージがあり、プロジェクトを持ってない人から見ると少し遠い存在にみえがちです。ですが、ちょっとしたスクリプトを書きたい人、しかもリモートにもリポジトリを置きたい人いますよね。 そんな時に便利なのがGistです。 「Gistというと、単なるコードスニペットサービスでしょ?」と思われるかもしれませんが、Gistの凄いところはちょっとしたスクリプトをソース管理出来る所です。 以下、簡単なperlスクリプトをソース管理しながら完成まで仕上げる過程を例を持って示してみます。 ただし、ここで言っておきたい事が一つ。Gistを便利に使う為のツール、Gistyを入れるべきです。 GistyはGistにポストすると同時に所定の場所にgit cloneしてくれ、初期ポストからコーディング開始までをスムーズに促してくれま

                                            Big Sky :: Gistyで始めるGist/Githubのススメ
                                          • サイトのクローリングにはScrappyがすごくいいかもしれない - Perl勉強メモ アルパカDiary出張版

                                            クローリング楽しいですよね! perlで高速にクロールしたいのであればGunghoなど使うのがいいかもしれませんが、 基本手軽にやりたいことが多いので WWW::Mechanize+Web::Scraper という組み合わせでクロールするのが定番でした。 しかしたまたま Scrappy を知り、 少し触ってみたところすごくいいのではないか!?と思い 記事にしてみました。*1 基本系(crawlコマンドを利用する場合) my $scrappy = Scrappy->new; $scrappy->crawl('1.クロールするルートURL', '2.URLにマッチするパス' => { '3.コンテンツにマッチするxpath or CSSセレクタ' => sub { my ($self, $item) = @_; # 4.キューに追加 $self->queue->add($item->{href

                                              サイトのクローリングにはScrappyがすごくいいかもしれない - Perl勉強メモ アルパカDiary出張版
                                            • ブログが続かないわけ | Web::Scraper 使い方(超入門)

                                              3年前にこの本に出会って、僕はスクレーピングの虜になった。 おかげで正規表現をたくさん書く機会が得られたし、CPANのモジュールともたくさん触れ合うことができたし、さらに自分自身でも構造化されたHTMLを書く習慣も身についた。 ただ、やっぱり、スクレーピングは簡単ではない部分もたくさんあると思う。文字コードについても意識しなければならないし、なにより正規表現で必要な部分を抽出することそのものが結構骨のいる作業だ。HTML::TreeBuilder を使った方がいいのか、それとも正規表現だけでやったほうが楽なのか。そんなことを考慮しながらコーディングして行く。そこがスクレーピングの楽しいところでもあるのだが、そこがスクレーピングの敷居を高いものにしていることも否めない。 そんな、愛らしくもあり憎たらしくもあるスクレーピングを簡単にやってしまうのがこのモジュール、Web::Scraper だ。

                                                ブログが続かないわけ | Web::Scraper 使い方(超入門)
                                              • Mac OSXでPerlの環境を整える | Heart Beat

                                                *2010/08/12追記 まずはMacportsのインストール PerlのインストールにもMacportsを使うと/opt/local以下にインストールしてくれるのでオススメします。 MacのデフォルトのPerlのインストールディレクトリを汚さないですし、アンインストールやアップグレードなどのバージョン管理もできるパッケージ管理ツールです。 MacPortsとは? MacPorts(旧名DarwinPorts)というのはパッケージ管理ツールで、UNIX向けのオープンソースソフトウェアをダウンロード、configure、make、インストール、そのパッケージ使用するのに必要な他のパッケージも一緒にインストールなど面倒な作業をすべて代わりにやってくれる便利なソフト。 source: Macports – Macの手書き説明書 事前にXcodeTools、X11をMacに付属しているインストー

                                                • HTMLをスクレイピングして解析(パース)する - まるさんかくしかく Tech学習と入門ログ

                                                  Twitter Facebook B! Bookmark LINE Pocket Feedly HTMLをスクレイピング(scraping)してあれこれとするとき、僕はずっと正規表現に頼っていたのですが、 ページの構造が変化するとすぐに使えなくなってしまうし、時間がかかる割りに退屈な作業なので何とかならないかなと思っていました。 PHPで探していたのですが、XML(とかRSS)をパースする関数やライブラリは、良く目にするものの、HTMLを処理できるものはなかなか見つかりませんでした。 以下は、PHP(とかRuby、Perl)でHTMLをスクレイピングしたりパースするための方法。 PHPでスクレイピング&パース HTMLを整形式のXML文書に修正するPHPクラス HTMLを、整形式のXMLに変換してくれるライブラリ。PEARのXML_HTMLSax3が同梱されているので、これだけでちゃんと動

                                                    HTMLをスクレイピングして解析(パース)する - まるさんかくしかく Tech学習と入門ログ
                                                  • GitHub - ripienaar/free-for-dev: A list of SaaS, PaaS and IaaS offerings that have free tiers of interest to devops and infradev

                                                    Brainboard - Collaborative solution to visually build and manage cloud infrastructures from end-to-end. Cloud 66 - Free for personal projects (includes one deployment server, one static site), Cloud 66 gives you everything you need to build, deploy, and grow your applications on any cloud without the headache of the “server stuff.”. Pulumi — Modern infrastructure as a code platform that allows you

                                                      GitHub - ripienaar/free-for-dev: A list of SaaS, PaaS and IaaS offerings that have free tiers of interest to devops and infradev
                                                    • #21 和田裕介(ゆーすけべー) | gihyo.jp

                                                      今回の対談は、9 月10.11 日に開催されたYAPC::Asia 2009会場となった東京工業大学大岡山キャンパスにて実施。ゲストは、「⁠Twib」「⁠YourAVHost」(⁠注1⁠)⁠ などのサイトでお馴染みの、ゆーすけべーこと和田裕介さんです。袋綴(と)じこそ実施には至りませんでしたが、一部、いまだかつてないエロ度の対談になりました。 (撮影:武田康宏) Web開発に携わったきっかけ 弾:今回はWEB+DB PRESSで初めての袋綴じということで…(笑⁠)⁠。 ゆ:袋綴じって(笑⁠)⁠。 弾:さっそくですが、Web開発に携わったきっかけってなんですか? ゆ:僕は大学院まで行ってるんですけど[2]⁠、そのときの研究は、コンピュータをいじることではあったんですが、インタフェースとかアート寄りで、コンピュータは専門じゃなかったんです。で、卒業と同時に父親と会社をやり始めて[3]⁠。Web

                                                        #21 和田裕介(ゆーすけべー) | gihyo.jp
                                                      • BeautifulSoupでスクレイピングのまとめ – taichino.com

                                                        何度かBeautifulSoupについては書いているのですが、未だに使い方が覚えられずにイライラします。仕方が無いのでまとめて置く事にしました。BeautifulSoupはHTMLから情報を取得するだけ無く、HTMLの編集もできますが、ここではスクレイピング用途のみに絞っています。 使用するのは以下のHTMLです。 このHTMLを使って色々と情報を取得したのが以下です。覚えるべきはfindAllだけです。注意する必要があるのは、textを指定した場合にタグオブジェクトが取れずに、テキストオブジェクトが取れるので、一旦parentで親のタグ取りましょうという事と、正規表現で条件指定する場合は、re.compileで正規表現オブジェクトを渡すという事位ですか。 #!/usr/bin/python # -*- coding: utf-8 -*- import re import urllib f

                                                        • Web::Scraperのjavascriptバージョンwebscraper.js - bits and bytes

                                                          perlのWeb::Scraperみたいな記述で、ページの中からデータを取り出すwebscraper.jsという小さなjavascriptのライブラリを書きました。 ブックマークレット データを取り出したいページでブックマークレットでwebscraper.jsを読み込んでFirebugコンソールで使います。 ブックマークレット webscraper コードwebscraper.js つかいかた Web::ScraperのSYNOPSISで例としてあげられているebayでapple ipod nanoを検索した結果からデータを取り出すときは 検索結果ページで上のブックマークレットを呼び出してFirebugコンソールで取り出す部分を記述します。 こんなかんじ。 SYNOPSISのperlのコードで変数$ebay_auctionに一度代入されている部分をそのままインラインで書き直すと my $e

                                                          • Web::Scraperが便利すぎて困るの巻 (CodeZine編集部ブログ)

                                                            こんにちは、編集マンの久次です。 なんだかPerlのWeb::Scraperが便利すぎで、やばいです。 これまでWWW::Mechanizeでごにょごにょやっていたのですが、一気にいろんなものが解決しました。 それで、いろいろ書いていたら、HTML::TreeBuilderのlook_downというメソッドも強力なことにいまさらながら、気づいたので勉強がてら、ためしにコードを書いてみました。 Webの自動制御に今日も夢が広がる…。 <参考> Web::Scraper - Web Scraping Toolkit inspired by Scrapi - search.cpan.org naoyaのはてなダイアリー - Web::Scraper ブログが続かないわけ | Web::Scraper 使い方(超入門) Web::Scraper超便利 scrAPI Cheat Sheet

                                                            • Config::PitとWeb::ScraperとPlaggerで24時間365日のゲーム監視体制

                                                              序文 趣味のネットウォッチのために仕方が無く超便利なPerlを覚えようという感じの otsune です。そんなわけでコーディングの深い話はよくわからんので、今回はPerlとCPANを使ってネットウォッチを支援する手法について書きます。 ウォッチしたいWebページを機械的に監視できれば、あとはPlaggerなどの便利ツールを使って「メールを出す」「im.kayac.comでメッセンジャーにアラートを出す」「ピザを注文する」など好きな処理をすることが出来ます。 RSSフィードやAPIなどがあるWebサイトであれば特に苦労はしないのですが、今回取り上げるOgame.jpはウェブブラウザーゲームなので、フィードなど便利な機能はまったく存在しません。 そこでウォッチしたいWebページに対してWeb::Scraperを使ってYAMLを出力する短いスクリプトを書いてしまいます。 メールを出すなどのこまご

                                                              • A curated list of awesome Go frameworks, libraries and software - Awesome Go

                                                                Awesome Go We use the Golang Bridge community Slack for instant communication, follow the form here to join. Sponsorships: Special thanks to Awesome Go has no monthly fee, but we have employees who work hard to keep it running. With money raised, we can repay the effort of each person involved! You can see how we calculate our billing and distribution as it is open to the entire community. Want to

                                                                  A curated list of awesome Go frameworks, libraries and software - Awesome Go
                                                                • Web::Scraper を XML::LibXML で爆速にする hack! - woremacxの日記

                                                                  id:miyagawa さんの Web::Scraper で、HTML::TreeBuilder::XPath の代わりに XML::LibXML を使うととても幸せになれそうなので実験してます。XML::LibXML に手を出す前に IRC で「tinyxpath とか htmlcxx とか使って xpath 周りを高速にしたい」とかボヤいてことがありました。そのときに、id:vkgtaro さんや id:tomyhero さんに激しく libxml や XML::LibXML をオススメされました。libxml をオススメしてもらえてなかったら、確実に路頭に迷ってました。以下が、変更したファイルと差分です。http://pub.woremacx.com/Web-Scraper/Scraper.pmhttp://pub.woremacx.com/Web-Scraper/Web-Scrap

                                                                  • セブンイレブンのネットプリントをMac OS XやLinuxや*BSDなどで仮想プリンタとして使う - このブログはURLが変更になりました

                                                                    以前、CUPSからネットプリントに出力する簡単なプログラムを紹介したが、最近それが動かなくなったとコメントを頂いたので、色々書き直してみた。 仕組み CUPS-PDFでPDFファイルを生成し、それをセブンイレブンのネットプリントサービスに投げるだけ。APIは用意されていないのでCGIを直接叩く。 やり方 アカウント取得 http://www.printing.ne.jp/register/index.html にアクセスしてユーザIDとパスワードを取得する。 CUPS-PDFのインストール まずCUPS-PDFをインストールする。 Linux/*BSDであれば各ディストリビューションのパッケージまたは本家サイトにあるtarball/rpmをインストール。gentooはemerge cups-pdfでok。 Mac OS XはCUPS-PDF for Mac OS Xをダウンロードしてインス

                                                                      セブンイレブンのネットプリントをMac OS XやLinuxや*BSDなどで仮想プリンタとして使う - このブログはURLが変更になりました
                                                                    • iview for Tombloo

                                                                      iPhoneでtumblrのdashboardやいろんなサイトの写真をただただひたすら見ていくためのiviewは、中ではAutoPagerizeみたいにXPathで定義されたサイトの構造に従って写真を取り出して表示しています。 次のバージョン(0.0.8)で、iview用に書かれたsiteinfoみたいなのを外から読み込んで写真を表示できるようにしようとwedataのItem - データベース: iview - wedataに20くらいsiteinfoを書きました。 このsiteinfoを使ってiviewのFirefox+Tomblooバージョンを作りました。tumblrだけでなくwedataに書かれたいろんなサイトでLDRize+reblogCommandと同じようにj/kで移動してtでtumblrにpostすることができます。 使い方 以下 iview for Tombloo のインス

                                                                      • パスワード設定をコードに書かない(Config::Pit) - モダンなPerl入門 - モダンなPerl入門

                                                                        パスワード設定をコードに書かないようにするには Config::Pit をつかいます。 なぜ必要なの? アカウント情報が必要なWebサービスを利用するスクリプトを作るとき、アカウントやパスワードをスクリプトのコードに直接書き込むと(ハードコーディング)、そのスクリプトがほかの人に見られてしまうことによりパスワードが漏洩してしまいます。 Config::Pitは、外部ファイルにWebサービスのアカウント情報を格納しておき、スクリプト側で必要なときに、読み出しできるようにします。これにより、スクリプト内にアカウント情報をハードコードすることがなくなり、スクリプト単体でのパスワード漏洩が防げます。 例:コードを配布しようとして、 #!/usr/bin/perl use strict; use warnings; use utf8; use Encode; use WWW::Mechanize;

                                                                        • Web::Scraper で XPath と CSS セレクタを混ぜて使う例 - Tociyuki::Diary

                                                                          Web::Scraper はいたれりつくせりの仕掛けが仕込んであって、便利ですね。私が、割と良く使っている機能は以下 2 つです。 process の第一引数に、CSS セレクタだけでなく、XPath も指定できます。ただし、XPath を指定するときは先頭を必ずスラッシュ(/)で始めなければいけません。 process の第二引数以降の、値をどこから取得するかを指定する部分に、コード・リファレンスを置くこともできます。これを使うと、DOM ツリー中の値を加工して抽出することができます。 具体例として、デイリーポータルZのアーカイブ一覧の中からべつやくれいさんのエントリを抽出してみることにします。まず、アーカイブ・ページのエントリ部分を取り出してやると、こうなっています。 <TD width="580" valign="top" class="tx12px"> <P> <B><FONT c

                                                                            Web::Scraper で XPath と CSS セレクタを混ぜて使う例 - Tociyuki::Diary
                                                                          • Dify の ワークフロー の概要|npaka

                                                                            以下の記事が面白かったので、簡単にまとめました。 ・Workflow - Dify 1. ワークフロー1-1. ワークフロー「ワークフロー」は、複雑なタスクを小さな「ノード」に分割することで、LLMアプリケーションのモデル推論への依存を減らし、システムの説明可能性、安定性、耐障害性を向上させます。 「ワークフロー」の種類は、次のとおりです。 ・Chatflow :  顧客サービス、セマンティック検索など、応答作成に複数ステップのロジックを必要とする会話シナリオ用 ・Workflow : 高品質な翻訳、データ分析、コンテンツ作成、電子メールの自動化など、自動化・バッチ処理シナリオ用 1-2. Chatflow自然言語入力におけるユーザー意図認識の複雑さに対処するため、「質問分類」「質問書き換え」「サブ質問分割」などの問題理解ノードを提供します。さらに、LLMに外部環境との対話機能、すなわち「

                                                                              Dify の ワークフロー の概要|npaka
                                                                            • Coroを使って並行処理 - JPerl Advent Calendar 2009

                                                                              こんにちわ。『層・圏・トポス』読者の会からの刺客、id:hirataraです。 「並行処理」って言葉はなんだか魅力的ですよね! そこで、今日はCoroを使った並行処理を紹介します。なお、Coroはコアモジュールではありませんので、使ってみたい場合にはCPANからインストールして下さい。 スレッドを作る Coroでは、asyncによって新しいスレッドを作ることができます。ただし、asyncでスレッドを作っても、何もしなければ他のスレッドに勝手に処理が移ることはありません。asyncで作成した別のスレッドに制御を移すには、明示的な操作が必要となります。ここではcedeを使って、asyncブロックへ処理を移しましょう。 use strict; use warnings; use Coro; async { print "Another thread\n"; }; print "main thre

                                                                              • Web::Query - jQuery風にスクレイピング - tokuhirom's blog

                                                                                http://frepan.org/~TOKUHIROM/Web-Query-0.01/README.pod Web::Query というスクレイピングフレームワークをかきました。一言でいうと「うごく pQuery」です。pQuery は jQuery とおなじ動きにするためかどうかしりませんが、わりと自前で実装していて、結果まともにうごいていません。うごくようになるのをまってようかなとおもっていたら2年経過していたので、自分でつくってみました(パッチをおくってもいいのだけど、別個の実装をつくったほうがはやい気がしたので)。HTML::TreeBuilder::XPath + HTML::Selector::XPath + LWP::UserAgent という構成です。 使用例は以下のとおり。 use Web::Query; wq('http://google.com/search?q=f

                                                                                • デザイナー必見!VPSで高速なMovable Type用サーバをゼロから構築する方法 - エンジニアブログ - スカイアーク

                                                                                  まだGW中に間に合いますよ!という事で最近[個人的]にサーバを構築する機会が多いので、サーバ構築のノウハウを公開したいと思います。 Movable Type専用というわけではないですが、PSGIでのサーバ構築手順がほとんど公開されていないようなので なるべく初心者の人でも判るように解説したいと思います。 かなり検証を行ったので、素のCentOS6.4(64ビット)であれば、上から順番にコピー&ペーストでコマンドを実行するだけで、サーバが構築できるはずです。各コマンドについては細かく説明はしておりませんが、まずは構築してみる事から初めては如何でしょうか。わかりづらい箇所があればFBやTwitter等で質問を受け付けますので気軽にどうぞ。需要があれば一日かけてサーバ構築の勉強会でも実施しようかなと思っているので「いいね」と「はてぶ」お願いします! 目標 本番でも使えるサーバ(最低限のセキュリテ

                                                                                    デザイナー必見!VPSで高速なMovable Type用サーバをゼロから構築する方法 - エンジニアブログ - スカイアーク