@NitroDesktop

Не работает скачивание картинок, возможно исправить?

В чем проблема?

Traceback (most recent call last):
File "d:\Documents\test\Py\news\downloadimg.py", line 29, in
f.write(r.content)
TypeError: write() argument must be str, not bytes


import requests  
from lxml import html  
import sys,os
# import urlparse
import urllib.parse

urs_adr=input()

response = requests.get(urs_adr)  
parsed_body = html.fromstring(response.text)

# Парсим ссылки с картинками
images = parsed_body.xpath('//img/@src')  
if not images:  
    sys.exit("Found No Images")

t_folder="downloaded_images"

# Конвертирование всех относительных ссылок в абсолютные
images = [urllib.parse.urljoin(response.url, url) for url in images]  
print('Found %s images' % len(images))
if not os.path.exists(t_folder):
    os.mkdir(t_folder)
# Скачиваем только первые 10
for url in images[0:10]: 
    r = requests.get(url)
    
    f = open('downloaded_images/%s' % url.split('/')[-1], 'w')
    f.write(r.content)
    f.close()
  • Вопрос задан
  • 131 просмотр
Пригласить эксперта
Ответы на вопрос 1
SoreMix
@SoreMix Куратор тега Python
yellow
Файл для записи байтов открывайте в режиме wb

Где w - write, а b - соответственно, байты.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы