Найти - Пользователи
Полная версия: в виндовс 10 есть обои на экран входа, но их нельзя поставить в качестве обоев рабочего стола
Начало » Python для новичков » в виндовс 10 есть обои на экран входа, но их нельзя поставить в качестве обоев рабочего стола
1
mswvith
цель создать скрипт который будет копировать файлы из папки виндовс интересное C:\\Users\\имя_пользователя\\AppData\\Local\\Packages\\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\\LocalState\\Assets
в папку на рабочем столе
C:\\Users\\имя_пользователя\\Desktop\\new
переименовывать все файлы в *.jpg
и сортировать по размеры, т. к. там не только обои, но и картинки из магазина и т. д.
дальше выбрать эту папку для фона рабочего стола и решить проблему интересных обоев

лично я новичок в питоне и пока мне удалось лишь скопировать все файлы из одной папки в другую

import shutil

# копируем все файлы из интересного к себе на рабочий стол
shutil.copytree('C:\\Users\\имя_пользователя\\AppData\\Local\\Packages\\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\\LocalState\\Assets', ‘C:\\Users\\имя_пользователя\\Desktop\\new’)

а дальше какой то затык
нашел как сортировать
http://pythoner.name/program/sortfiles
но не могу переварить

может кто-нибудь поможет с переименованием файлов и сортировкой?) желательно с простым объяснением
ну и вообще буду рад любому ответу, так как изучать язык интересно, просто не все такие умные))
спасибо)



mswvith
переименую файлы
for x in os.listdir(“C:\\Users\\имя_пользователя\\Desktop\\new”):
os.rename( x, str((random.random()*100))+'.jpg')
но скрипт должен находится в папке с картинками, почему?
mswvith
вышел вот такой скрипт

import shutil
import os
import random

# копируем все файлы из интересного к себе на рабочий стол
shutil.copytree('C:\\Users\\имя_пользователя\\AppData\\Local\\Packages\\Microsoft.Windows.ContentDeliveryManager_cw5n1h2txyewy\\LocalState\\Assets', ‘C:\\Users\\имя_пользователя\\Desktop\\2’)

# переименовываем вайлы в .jpg
os.chdir(r'C:\\Users\\имя_пользователя\\Desktop\\2')
z = os.listdir('C:\\Users\\имя_пользователя\\Desktop\\2')
for x in z:
os.rename( x, str((random.random()*100))+'.jpg')

# сортируем по размеру
z1 = os.listdir('C:\\Users\\имя_пользователя\\Desktop\\2')
for x in z1:
if os.path.getsize(x) < 250000:
os.remove(x)

и всё нормально работает, но в папке есть файле с горизонтальной и вертикальной ориентацией, нужно только горизонтальные. они практически одинакового размера, поэтому сортировка по размеру не подходит.


народ есть идеи?
ilnur
для работы с изображениями используйте pillow, там можно размер изображения узнать
mswvith
спасибо))

вот добавил:

from PIL import Image
# сортируем по ориентации
for x in os.listdir('C:\\Users\\имя_пользователя\\Desktop\\2'):
if (Image.open(x).size) != (1920, 1080):
os.remove(x)
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB