Есть задача спарсить изображения с одного сайта. Это изображения объектов недвижимости. Сохраняются они у меня все в одну папку. Вопрос следующий: как мне сохранять их в разные папки соответсвенно объекту недвижимости?
Код сейчас такой:
from urllib.request import urlopen
from urllib.parse import urljoin
from lxml.html import fromstring
import xlsxwriter
URL = 'http://amberstarluxury.pt/index.php/ru/2013-07-22-01-32-36'
ITEM_PATH = '.display .propertyaddress'
def parse_amber():
f = urlopen(URL)
list_html = f.read().decode('utf-8')
list_doc = fromstring(list_html)
ambers = []
num = 0
for elem in list_doc.cssselect(ITEM_PATH):
a = elem.cssselect('a')[0]
href = a.get('href')
name = a.text.strip()
houseUrl = urljoin(URL, href)
amber = {'name':name, 'url':houseUrl}
#идем внутрь
detailHouseHtml = urlopen(houseUrl).read().decode('utf-8')
detailHouseDoc = fromstring(detailHouseHtml)
#селектор галереи, который здесь без класса :( поэтому делаем [1][-1]
galaryList = detailHouseDoc.cssselect('.jwts_tabbertab')[1][-1]
for pic in galaryList:
galImg = pic.cssselect('a')
for picUrl in galImg:
galImgHref = picUrl.get('href')
uopen = urlopen(galImgHref)
stream = uopen.read()
file = open('houses/{0}'.format(galImgHref[-10:]),'wb')
# имена картинок я просто срезаю срезами
file.write(stream)
file.close()
print(galImgHref)
ambers.append(amber)
num += 1
print(num)
return ambers
def export_excel(filename, ambers):
workbook = xlsxwriter.Workbook(filename)
worksheet = workbook.add_worksheet()
bold = workbook.add_format({'bold':True})
field_names = ('Название', 'Описание', 'Ссылка', 'Характеристики')
for i, field in enumerate(field_names):
worksheet.write(0, i, field, bold)
fields = ('name', 'descr', 'url')
for row, amber in enumerate(ambers, start=1):
for col, field in enumerate(fields):
worksheet.write(row, col, amber[field])
for har in amber['har']:
col +=1
worksheet.write(row, col, har)
workbook.close( )
def main():
ambers = parse_amber()
# export_excel('amber.xlsx', ambers)
if __name__ == '__main__':
main()