我正在尝试使用 ImageMagick 从互联网上检索照片。偶尔会有一个有问题的。我该如何处理?
char file[] = "http://distilleryimage10.s3.amazonaws.com/1f6be58e383e11e3acaf22000ae80c8d_8.jpg";
Magick::Image image;
// use Magick to load the file
try {
image.read(file);
}
catch(int err) {
printf("Error retrieving snapshot. Skipping.\n");
return;
}
/* ... use this image */
例如,该特定 URL 具有受限访问权限。ImageMagick 只是抛出一个异常并说:
terminate called after throwing an instance of 'Magick::ErrorCoder'
what(): Magick: no data returned `http://distilleryimage10.s3.amazonaws.com/1f6be58e383e11e3acaf22000ae80c8d_8.jpg' @ error/url.c/ReadURLImage/232
Aborted
我以为我的 try/catch 会捕捉到这一点,但我对 python 的 try/except 有更多的经验。我希望其他事情也可能导致故障,例如 404 或 500。
我能做些什么?