Форум сайта python.su
0
Всем привет! Совсем новичок в питоне, подскажите, как мне явно указать в коде, чтобы все картинки сохранялись в папку? Вот код:
https://gist.github.com/kirussian911/51d96c9e1051e412843e101a9e59d1e4
Отредактировано kirussian (Авг. 28, 2018 00:38:45)
Офлайн
8
import os import re import urllib.request import requests def load_source(website): site = urllib.request.urlopen(website) read_site = site.read() return read_site def parse_img(source): links = [] t = str(source) pattern = '<img width="\d+" height="\d+" src="' result = re.split(pattern, t) # рабочий вариант через replace # t = str(source).replace('550', ' ').replace('375', ' ').split('<img width=" " height=" " src="') for i in result: r = str(i).split('""') links.append(r[0]) return links # Здесь мы получаем имя файла и сохраняем его def download(links): folder = 'ali' if not os.path.exists(folder): os.makedirs('ali') for i in links: try: v = requests.get(i, stream=True) filename = i.replace('?', '/').split('/')[8] #https://i0.wp.com/aliholic.com/wp-content/uploads/2018/08/magnetic-phone-holder-e153497563539jpg0.?resize=375%2C375&ssl=1" print(filename) # magnetic-phone-holder-e1534975635390.jpg with open(f'{folder}/{filename}', 'bw') as f: for chunk in v.iter_content(4096): f.write(chunk) except: pass def main(): print('start page: ') source = load_source('https://aliholic.com/shop/') links = parse_img(source) download((links)) print('Tnx') if __name__=='__main__': main()
Отредактировано Vigi (Авг. 28, 2018 04:58:41)
Офлайн
0
VigiСпасибо за помощь!
Офлайн