タイトル/名前 | 更新者 | 更新日 |
---|---|---|
日記/2009/05/06/OpenBSD4.5でrdateによる時刻合わせ(クライアントPC向け) | msakamoto-sf | 2009-05-06 16:40:53 |
日記/2009/05/06/OpenBSD4.5インストール後のpkg_add, pkg_infoとXの設定 | msakamoto-sf | 2009-05-06 16:04:22 |
日記/2009/05/05/VMware5でのOpenBSD4.5のインストールメモ | msakamoto-sf | 2009-05-05 23:58:54 |
日記/2009/05/02/image_collectorを改造してみた。 | msakamoto-sf | 2009-05-02 23:17:46 |
日記/2009/05/02/画像DLPythonツール"image_collector"を作ってみた。 | msakamoto-sf | 2009-05-02 16:06:24 |
日記/2009/05/01/Pythonで<img>タグのsrc属性の値だけを抽出 | msakamoto-sf | 2009-05-01 22:59:00 |
Python/setup.pyによるインストール | msakamoto-sf | 2009-05-01 00:26:49 |
日記/2009/04/30/HTMLリンクの周りの点線を除去 | msakamoto-sf | 2009-04-30 15:00:34 |
日記/2009/04/30/旧コンテンツ整理完了。 | msakamoto-sf | 2009-04-30 10:33:54 |
Emacs/.emacs.el | msakamoto-sf | 2009-04-26 20:51:47 |
OpenBSDには、OpenNTPDが同梱されていてNTPサーバとして立ち上げるのであればそのままntpdプログラムを利用できる。
但しクライアントPCとして使う場合は、rdateの方を使っても良い。
OpenBSD4.5の場合、 /etc/rc.conf にrdate用のエントリが登録されている。デフォルトではNOになっているが、適当なSNTPDサーバを"-n"で指定するように編集すれば、今後は起動時にrdateで自動的に時刻あわせをしてくれる。
rdate_flags=NO # for normal use: [RFC868-host] or [-n RFC2030-host]
→
rdate_flags="-n ntp.ring.gr.jp"
なお"-n"を付けないとRFC868の(NTPD以前の)時刻サーバと見なされてしまう。
コメントにあるとおり、RFC2030によるSimpleNTPを指定しておく。
なおNTPサーバはRingServerProject( http://www.ring.gr.jp/ring/ntp.html.ja )のNTPサーバを指定した。
日記/2009/05/05/VMware5でのOpenBSD4.5のインストールメモにてOpenBSD4.5をセットアップできました。
その後、packagesから幾つかパッケージを追加し、Xを設定してblackboxを立ち上げたのでメモ。
WindowsXP上のVMware5で、OpenBSD4.5をインストールした記録。
仕事先でFreeBSDを使っている(といってもSSHでログインしてvimでファイル編集してるだけだけど)のと、個人的な興味でOpenBSDをインストールしてみることにしたので、とりあえずVMware5にインストールした時のメモ。
日記/2009/05/02/画像DLPythonツール"image_collector"を作ってみた。で作ってみたimage_collectorですが、実際に使ってみた結果をフィードバックして改造しました。
http://coderepos.org/share/browser/lang/python/image_collector
特にソケットエラー発生時のリトライを実装したのが予想以上に助かりました。実際では結構ソケットエラーが発生していましたが、リトライ実装後は大体1度目のリトライで再接続して画像を取得できるようになり、取りこぼしが激減しました。
また "--noimgtag, --noatag" も思ったよりも便利でした。
imgタグではリサイズされたサムネイル画像のURLが指定されていて、aタグの方で元サイズの画像が指定されているリンクが結構多かったのです。
そうした場合に "--noimgtag" を指定して、aタグだけを拾うようにすると無駄も無いし、ネットワーク通信の負担もページによっては半分近くに減らせます。
あと、実際にアクセスする前に ".txt", ".html" でURLが終わるのを除去するようにしたのですが、これも予想以上に効果があり、無駄なリクエストを減らせました。
Pythonの演習として試しに作ってみたスクリプトですが、予想以上に便利に使えて、個人的には満足です。
日記/2009/05/01/Pythonで<img>タグのsrc属性の値だけを抽出 でBeautifulSoupを使った<img>のsrcタグ抜き出しが出来たので、肉付けして、HTML中の<img>タグと<a>タグでリンクされた画像をローカルにDLするスクリプトを組んでみた。
http://coderepos.org/share/browser/lang/python/image_collector
実際に使ってみた感覚としては、幾つか改良が必要と感じた。
多分getoptを使うことになりそう。
折角勉強したPythonです。趣味と実益を兼ねた、良い練習問題になりそうです。
別にPHPでもRubyでもPerlでも出来るのだけれど、折角Pythonを勉強してみたので、Pythonでやってみることにしました。
と、探せば沢山出てきますが、今回対象となるドキュメントは、正確なXMLというよりはタグエラーも混ざってそうな昔のHTMLだったりしますので、最終的に残ったのがBeautifulSoupでした。
BeautifulSoup自体はtarボールを解凍するとsetup.pyがありますので、普通に
python setup.py install (--record install-files.txt)
でOKです。ファイル自体は本体とテストコードで計2つしかありません。今回は最新版(3.1.x)ではなくて一つ前の3.0.7aを使いました。
ローカルファイルに落としてきたfoo.htmlを解析して、<img>タグのsrc属性値をリストで抜き出すのはこんな感じになります。
from BeautifulSoup import BeautifulSoup lines = open("foo.html", "r").readlines() data = ''.join(lines) soup = BeautifulSoup(data) elements = soup.findAll('img') for e in elements: print e['src']
Python1.6移行はDistutilsというパッケージが追加され(*1)、これに含まれるsetup()メソッドを使ったインストールスクリプトがsetup.py.
サンプルも載っていて分かりやすいので、直接Pythonドキュメントを参照した方が早い。Python 2.5, 2.6.1 共に "Distributing Python Modules" というトップレベルセクションで説明されている。
<img>要素を組み合わせたリンクとかですと、リンクをクリックした時の点線囲みが思わぬ領域まではみ出したりする時があります。タブ風のリンクを作成する時も目立ってしまいますので、何とかその点線を非表示にしたい時もあるかも。
そういう場合は、一番お手軽なのは
a:active { outline: none; }
とCSS指定する手法です。
"remove dotted line arround link" でググると沢山出てきます。
但し、随所でコメント欄や注意書きに書かれているとおり、点線を除去すると、TABキーでリンクを移動している人など、人によってはどこにリンクがあるのか分からないという不便さも出てきます。
そうしたアクセシビリティの問題に注意した上で用いれば、便利な手法だと思います。
2002-2007にかけて書きためてきた1,000件近くのエントリをようやく整理完了。
不要なエントリが大半で、7-800件ほど削れた。
でも、大学時代からの足跡をもう一度眺めることが出来て、無駄ではなかったです。
2003/08 時点での .emacs.el を添付します。
添付ファイル/030827002904_elisp.tar.gz
同梱してる外部EmacsLisp :
他、ceta.elとかfenjin.elとかありますが、自作のものです。
あと、同梱してませんが、mewをrequireしてます。
2003年当時としては、とりあえずX上で動く複数ファイル編集可能なエディタがあればよかったので、そんなに凝ったカスタマイズはしていません。といいますかEmacsLispの良き師が見つけられず、EmacsLispワカンネーであまりカスタマイズ出来なかったのが実情です。
vimはまだそれほど使いこなせてなかったですし。
とりあえず何かの拍子に見たくなる時もあると思いますので、UPしておきます。