2021.10.19
PerlのGD::Image->new()は画像じゃないデータを読み込ませるとエラーになることがあるので事前に手動で画像であることを確認した方が良い
my $ua = LWP::UserAgent->new;
my $req = HTTP::Request->new("GET",'http://xxxxx/xxx.jpg');
my $Image=$ua->request($req)->content;
if (ord(substr($Image,0,1))==255 && ord(substr($Image,1,1))==216){
my $GDImage = GD::Image->new($Image);
if ($GDImage == undef){エラー処理}
基本はGD:Image->new(xxx)した時に失敗すると作った画像オブジェクトがundefineになって失敗したことが分かってスクリプトも落ちないんだけど、gzip圧縮された何かとか、テキストとか読み込ませた時も、何かのきっかけでエラーでスクリプト止まっちゃうことがある。
解決法としては、JPEGファイルの最初はFF(255)D8(216)で始まるらしいので、それを利用して画像っぽくない時はGD:Imageに進ませないようにしたらエラー出なくなった。
参考:
Category:Perl・Javascript・python、サーバー管理メモ
コメント
この記事のアクセス数:1522025.01.25正規表現のオンラインWebチェッカー
2021.12.05中国のSippedが50ドルQVGAののToFカメラユニットを今年中に出荷開始。UVC、UART/SPI出力3コメ
2021.12.05Pythonのコードをワンラインで実行形式に変換してくれるPyInstaller1コメ
2021.12.03チャート、グラフを書くのに良さそうなGoogle Chart以外のJavascriptライブラリ5つ3コメ
2021.11.18まだ使ってる?今は非推奨となったJavaScriptの書き方。document.writeが強く非推奨だと!!!?4コメ
2021.10.19PerlのGD::Image->new()は画像じゃないデータを読み込ませるとエラーになることがあるので事前に手動で画像であることを確認した方が良い1コメ
2021.10.12【解決済み】ヨドバシとかZOZOのサイトにどうやってもスクリプトからアクセス出来ない16コメ
2021.08.31現代的なPerlの記述方法一覧2コメ
2021.07.09JavaScriptでワンタッチで仮想キーボードを表示する2コメ
2021.02.10PythonでPowerPointを作るライブラリ「python-pptx」が色々活用出来そう。22コメ
→カテゴリー:Perl・Javascript・python、サーバー管理メモ(記事数:82)
アクセス数の多い記事(過去1ヶ月)
●2025.03.20:どんな不都合が・・・(未分類)680access
●2025.03.14:8年ぶりにサンライズ出雲に乗車!家族4人で「ソロ個室」4部屋に上り乗車したメモ(#おでかけ情報)480access
●2024.09.15:我らがトライアル。ベトナム米を販売開始!(#グルメ・料理)477access
●2025.03.16:大量のレモンを余さず果汁絞るのが難しい。安い絞り器はクソばかり(#自宅DIY #ルーフテラス活用)445access
●2025.03.11:初めての焼き肉きんぐ(物語コーポレーション)の株主優待お食事券をゲット!!!!!優待・配当利回り年率3%程度(#お金 #マネー)362access