Як витягти зображення з веб-сторінки
Здатність витягувати зображення з HTML має вирішальне значення для різних додатків, включаючи веб-скрепінг та контент-аналіз. Aspose.HTML for Python via .NET – це надійна бібліотека, яка спрощує цей процес, пропонуючи розробникам набір інструментів для зручної навігації та збору інформації з HTML-документів. Давайте розглянемо, як завантажувати зображення з веб-сторінок.
Видобування зображень за допомогою Python
Використовуючи Aspose.HTML for Python via .NET, ви можете легко створити власний додаток, оскільки наш API надає потужний набір інструментів для синтаксичного аналізу та вилучення інформації з HTML-документів. Якщо ви хочете використовувати функції паосінгу даних HTML у своєму продукті або програмно витягувати дані з HTML, дивіться приклад коду нижче.
Код на Python для завантаження зображень з веб-сторінки
import os
import aspose.html as ah
import aspose.html.net as ahnet
# Prepare output directory
output_dir = "output/"
os.makedirs(output_dir, exist_ok=True)
# Open HTML document from URL
with ah.HTMLDocument("https://docs.aspose.com/svg/net/drawing-basics/svg-color/") as doc:
# Collect all <img> elements
images = doc.get_elements_by_tag_name("img")
# Get distinct relative image URLs
urls = set(img.get_attribute("src") for img in images)
# Create absolute image URLs
abs_urls = [ah.Url(url, doc.base_uri) for url in urls]
for url in abs_urls:
# Create a network request
request = ahnet.RequestMessage(url.href)
# Send request
response = doc.context.network.send(request)
# Check if successful
if response.is_success:
# Extract file name
file_name = os.path.basename(url.pathname)
# Save image locally
with open(os.path.join(output_dir, file_name), "wb") as f:
f.write(response.content.read_as_byte_array())
Кроки для вилучення зображень з веб-сторінки
- Відкрийте цільовий HTML-документ, веб-сторінку, за допомогою класу
HTMLDocument
. Цей документ є джерелом, з якого будуть витягнуті зображення. - Викличте метод
get_elements_by_tag_name(“img”)
об’єкта
HTMLDocument
, щоб зібрати всі елементи<img>
у документі HTML. - Витягніть унікальні URL-адреси зображень, ітераційно переглядаючи колекцію елементів
<img>
і отримуючи доступ до атрибутуsrc
кожного елемента за допомогою методу get_attribute(“src”) . Зберігайте ці URL-адреси у вигляді набору, щоб унеможливити їх дублювання. - Створюйте абсолютні URL-адреси зображень, передаючи кожну відносну або неповну URL-адресу разом з
base_uri
документа до конструктораUrl
. Це гарантує, що кожна URL-адреса буде повною і дійсною для мережевого доступу. - Для кожної абсолютної URL-адреси зображення створіть об’єкт RequestMessage для представлення HTTP-запиту, необхідного для отримання даних зображення.
- Використовуйте метод
doc.context.network.send(request)
для надсилання запиту та отримання відповіді. Перевірте успішність відповіді, обчисливши властивістьis_success
. - Проаналізуйте абсолютну URL-адресу зображення за допомогою
os.path.basename()
, щоб отримати ім’я файлу, а потім збережіть вміст зображення у вихідний каталог, записавши двійкові дані з відповіді у файл.
Щоб дізнатися більше про те, як програмно витягувати різні типи зображень з веб-сайту за допомогою Python, зверніться до статті документації Extracting Images from a Website in Python .
Примітка: Завжди поважайте закони про авторське право. Переконайтеся, що у вас є відповідні права, дозволи або ліцензії, перш ніж використовувати витягнуті зображення в комерційних цілях. Ми не схвалюємо і не підтримуємо несанкціоноване використання захищеного авторським правом контенту.
Початок роботи з Python API
Якщо ви хочете аналізувати, маніпулювати та керувати документами HTML, установіть наш гнучкий, високошвидкісний Aspose.HTML for Python via .NET API. pip
– це найпростіший спосіб завантажити та встановити Aspose.HTML for Python via .NET. Для цього виконайте таку команду:
pip install aspose-html-net
Додаткову інформацію про встановлення бібліотеки Python і вимоги до системи ви знайдете у документації Apose.HTML.
Інші підтримувані функції
Використовуйте бібліотеку Aspose.HTML for Python via .NET для аналізу та маніпулювання HTML-документами. Зрозуміло, безпечно і просто!