【Linux】バッチが重複実行する悪夢

wgetコマンドは標準では
「タイムアウトすると再実行する」という性質があります。

PHPで書いた処理を
wgetで呼び出すシェルスクリプトを
cronで実行する
というバッチ処理を組みました。

しかし処理時間の目測を誤り、wgetがタイムアウトしてしまったため、
内部でPHPは実行中にもかかわらず
もう一度PHPが実行されてしまいました。

これを防ぐには、タイムアウト時間を長くとるか、
実行回数を1回にするオプションを指定します。

【CSS】複数行の長いテキストを三点リーダーで省略する

複数行というところがポイントです。
昔は文字数をカウントして自力でカットしていた老人ですが、
今はCSSだけでできるんですね。面白いなあ。

複数行というところがポイントです。
昔は文字数をカウントして自力でカットしていた老人ですが、
今はCSSだけでできるんですね。面白いなあ。

これが当たり前になっていると単なる作業ですが
昔の苦労した時代を知っていると
こういうテクニック1つ1つが面白いと思えてきます。

【PHP】PHPで簡単にスクレイピング

phpQueryというライブラリを使えば
PHPでも非常に簡単にスクレイピングできます。

phpQuery
https://code.google.com/archive/p/phpquery/downloads
onefileという名前がついた最新のものをダウンロードします。
PHP1つなのでインストールもインクルードも簡単なので省略します。

使い方も簡単で、file_get_contentsでページをとってきて

phpQueryに読み込ませれば

あとは、いろんな条件でデータを抽出するだけ

タグで抽出

IDで抽出

クラス名で抽出

【Linux】サーバーでPDFの結合

Linuxサーバー上でPDFを結合できるコマンドがあります

コマンドが見つからないとなる場合は

というパッケージをインストールしましょう。

PDFの結合

逆にPDFをページごとに分割するpdfseparateというコマンドもあります。
pdfseparateコマンドで元のPDFをページごとに分割しておけば
任意のページだけを組み合わせて新たなPDFファイルを生成できますね。

JSONビューア

APIの出力フォーマットはもっぱらJSONが増えてきましたね。
出力結果のチェックは、短いデータならそのまま目視できますが
一覧データの取得など、ものすごい巨大なJSONをチェックする必要があるときは
ビューアが便利です。

Online JSON Viewer
http://jsonviewer.stack.hu/

自作できそうな気もしますが、こういうのチェックしているときって
たいてい精神的に追い詰められてたりして余裕がないんですよね。

個人情報が入っているデータの場合は
できればよそのサービスは使わずに自作したいところですが。