Как искать фотографии по высоте или ширине?

Проблема возникает в Chrome v. 29

Решение заключается в обновлении до более новой версии, например. 30 (или перейдите к 28, если хотите)

Чтобы проверить версию, введите строку URL: chrome://version

Сначала вам нужно удалить текущую версию (ваш профиль данные останутся нетронутыми):

sudo apt-get remove chromium-browser

Затем установите новую версию. Вы можете скачать установочный пакет здесь: http://www.ubuntuupdates.org/package/ubuntu_mozilla_security/saucy/main/base/chromium-browser

(выберите версию для вашего дистрибутива и архитектуры) [!d7 ]

Как только у меня была ссылка на установщик, так я установил пакет для x64 Saucy через терминал:

wget http://ppa.launchpad.net/ubuntu-mozilla-security/ppa/ubuntu/pool/main/c/chromium-browser/chromium-browser_30.0.1599.114-0ubuntu0.13.10.2_amd64.deb
sudo dpkg -i chromium-browser_30.0.1599.114-0ubuntu0.13.10.2_amd64.deb 
rm chromium-browser_30.0.1599.114-0ubuntu0.13.10.2_amd64.deb 
1
задан 27 October 2015 в 06:07

1 ответ

Извлечение изображений из рекурсивного каталога

В приведенном ниже скрипте будут скопированы изображения с соотношением 4: 3 из рекурсивно исходного каталога в целевой каталог.

#!/usr/bin/env python3
import os
import shutil
from PIL import Image
import sys

dr = sys.argv[1]; target = sys.argv[2]

for root, dirs, files in os.walk(dr):
    for f in files:
        try:
            file = root+"/"+f
            img = Image.open(file); size = img.size; ratio = size[0]/size[1]
            if ratio == 4/3:
                shutil.copyfile(file, target+"/"+f)
        except (IOError, ValueError):
            pass

Как использовать

Скопировать сценарий в пустой файл, сохранить это как search_ratio.py Запустите его командой:
python3 /path/to/search_ratio.py /source/directory /target/directory

Если одна или несколько каталогов содержат пробелы, используйте кавычки. Пример команды, которую я использовал для тестирования:

python3 '/home/jacob/Bureaublad/pscript_4.py' '/home/jacob/Bureaublad' '/home/jacob/Afbeeldingen/test'

Если вы извлекаете изображения из «плоской» (единственной) директории

Тогда сценарий может быть немного проще: [ ! d10]

#!/usr/bin/env python3
import os
import shutil
from PIL import Image
import sys

dr = sys.argv[1]; target = sys.argv[2]

for f in os.listdir(dr):
    try:
        file = dr+"/"+f
        img = Image.open(file); size = img.size; ratio = size[0]/size[1]
        if ratio == 4/3:
            shutil.copyfile(file, target+"/"+f)
    except (IOError, ValueError):
        pass

Используйте его точно так же, как и первый.

Обратите внимание, что при первом скрипте вы получите столкновения имен в случае дублированных имен в разных исходных папках.

1
ответ дан 23 May 2018 в 16:19

Другие вопросы по тегам:

Похожие вопросы: