我有一个csv文件,看起来像这样(简短的示例,每个id实际上大约有20张图像)。
2463666;[email protected];yleiskuva;7;kivirealty-original;7;http://d372r717gpt3jp.cloudfront.net/itemimages/realty/original/209.15555/img483903555766418535.jpg;pääkuva;1;kivirealty-original;1;http://d372r717gpt3jp.cloudfront.net/itemimages/realty/original/209.15555/img2055776735947406126.jpg;yleiskuva;9;kivirealty-www;9;http://d372r717gpt3jp.cloudfront.net/itemimages/realty/www/209.15555/img7955434706446319955.jpg
2538034;[email protected];yleiskuva;8;kivirealty-original;8;http://d372r717gpt3jp.cloudfront.net/itemimages/realty/original/209.15555/img3622394024988955125.jpg;yleiskuva;7;kivirealty-original;7;http://d372r717gpt3jp.cloudfront.net/itemimages/realty/original/209.15555/img7456562650934206782.jpg;yleiskuva;7;kivirealty-thumb;7;http://d372r717gpt3jp.cloudfront.net/itemimages/realty/thumb/209.15555/img3483011994211655969.jpg
...
结构是这样的:
id;电子邮件; type_of_image; image_order; image_quality; image_transfer_id; image_url;
由于源xml具有这些字段,因此重复了该粗体版本多次,因此每个id可能有(最可能是)不同数量的图像。我需要创建一个文件夹,然后根据ID将这些图像下载到该文件夹中,例如
some_path/2463666/img483903555766418535.jpg
也有缩略图和“ www大小”的图像文件,但是我只需要kivirealty-original
在图像位置之前将其作为字段的文件即可。
如何解析我需要的文件,然后将wget
这些文件解析到以其ID命名的文件夹中?
该示例文件是由Shell脚本生成的,在该文件完成后,我需要执行此操作的代码。
while IFS=";" read id a remain
do
while [ "$remain" ]
do
IFS=";" read a b test d i_url remain <<< "$remain"
if [ "$test" == "kivirealty-original" ]
then
if [ ! -d "some_path/$id" ]
then
mkdir -p "some_path/$id"
fi
wget -nd -P "some_path/$id" "$i_url"
fi
done
done < file.csv
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句