Category Archives: JavaScript

Node.jsで文字コードを推測しつつスクレイピングしてみる

サーバ さくらのVPS 1G
OS CentOS release 6.3 (Final) x86_64
Node.js v0.9.0
node-iconv(文字コード変換) 1.2.3
node-icu-charset-detector(文字コード推測) v0.0.3
cheerio(jQueryライクなDOM解析) 0.9.0
サンプルコード 0.0.1

Webページのタイトル取得例

Node.jsでスクレイピングする方法は色々と公開されていますが、文字コードを推測しつつページを取得するような処理の方法がわからなかったため、調べながら書いてみました。具体的には、URLが発言されるとタイトルを返すIRC-BOTの機能をイメージしています。

Read more »

Chrome Extensionでページの更新を監視してみる

試した環境

OS Windos 7 Professional SP1(64bit)
Google Chrome 13.0.782.215 m Windows
jQuery 1.6.2

内容

  • Google Chrome Extensionsでバックグラウンドで定期的な処理をする方法
  • Google Chrome ExtensionsでWebページを取得してページの特定の箇所を取得する方法
  • Google Chrome Extensionsでユーザに情報を通知する方法

Read more »

ニコニコ動画に自動ログインする簡易SeaHorseスクリプト

  • 2008/02/14 名前空間を汚染しないためにユーザースクリプトは無名関数で囲むのが通例らしいので修正(Greasemonkeyの話.SeaHorseでどうなっているかは知らないですが一応やっておきます)
  • 2008/05/28 ニコニコ動画のログイン画面リニューアルでフォームIDが変わっていたので修正
  • 2008/10/05 いつのまにかメールアドレスとパスワードの入力欄のIDが変わっていたので修正
  • 2010/11/02 (原宿)に対応

私は普段ノートパソコンとデスクトップパソコンを使って作業しています.
たまにニコニコ動画を見てサボったりもするわけですが,
ニコニコ動画は普段ブラウザを閉じてもログイン状態が継続するのに,
違うパソコンで一回ログインするとそれが途切れてしまう仕様になっています.
毎回毎回メールアドレスとパスワードを入力するのが面倒だったので,
自動ログイン用のSeaHorseスクリプトを作ってみました.
一応GreaseMonkeyでも動いてます.

Read more »

[JavaScriptメモ] 正規表現

正規表現の便利さは異常ですね

//というURLからベースのURLと数字を取得
//http://www.sample.com/~foo/bar/ref2080.htm
// 現在のURLをゲット
var pageURI = 'http://www.sample.com/~foo/bar/ref2080.htm';
var matches = pageURI.match(/^(.+\/)ref([0-9]+)\.htm$/);
var baseURI = matches[1];
var baseNumber = matches[2];
baseURI http://www.sample.com/~foo/bar/
baseNumber 2080

正規表現は普通.
括弧の指定で抜き取り対象を指定.
0番目はマッチした全体が入るので,
1番目からが指定した対象が入ってます.

置換だったらこんな感じ

//というURLからベースのURLと数字を取得
//http://www.sample.com/~foo/bar/ref2080.htm
// 現在のURLをゲット
var pageURI = 'http://www.sample.com/~foo/bar/ref2080.htm';
var replaced = pageURI.Replace(/^(.+\/)ref([0-9]+)\.htm$/,"$1$2");
replaced http://www.sample.com/~foo/bar/2080