Src url: В чём разница между url, href и src? — Хабр Q&A

python — Как получить значение src в class_ = ‘small-gallery-image’

Вопрос задан

Изменён 4 года назад

Просмотрен 365 раз

Необходимо получить значение в src (url картинки). Код:

import requests
from bs4 import BeautifulSoup
url = 'https://memepedia.ru/trending/'
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text)
array = soup.find_all(class_ = 'entry-title')
hrefs = [el.select('a')[0]['href'] for el in array]
#print(hrefs)
r1 = requests.get(hrefs[0], headers=headers)
soup1 = BeautifulSoup(r1.text)
arr1 = soup1.find_all(class_ = 'small-gallery-image')
print(arr1)

Вывод:

[<figure>
<a data-class="post-gallery-lightbox" data-id="#post-gallery-184644" href="#post-gallery-184644_0"><img alt="Крот" src="https://memepedia. ru/wp-content/uploads/2019/06/photo_2019-06-11_00-31-07-360x270.jpg"/></a>
</figure>, <figure>]
  • python
  • парсер
  • beautiful-soup

Запустил ваш код, получил arr1 содержащий 11 элементов <figure>. Для получения значения атрибута src из <img> сделал так:

imgs = [el.img.get('src') for el in arr1]

Результат:

['https://memepedia.ru/wp-content/uploads/2019/06/photo_2019-06-11_00-31-07-360x270.jpg',
 'https://memepedia.ru/wp-content/uploads/2019/06/neh4gdkkdgx-rf7-rcn24uw9rvgzt9fdk66lupmnsluzoihaxnbjrqabnb7nawu_qmkag4bsekfspizimmaw757nt_yi2egqun3xvhg8l88-1-360x270.jpg',
 'https://memepedia.ru/wp-content/uploads/2019/06/screenshot_4-2-360x270.png',
 'https://memepedia.ru/wp-content/uploads/2019/06/photo_2019-06-12_03-28-37-360x270.jpg',
 'https://memepedia.ru/wp-content/uploads/2019/06/photo_2019-06-12_15-15-47-360x270.jpg',
 'https://memepedia.ru/wp-content/uploads/2019/06/screenshot_8-4-360x270.
png', 'https://memepedia.ru/wp-content/uploads/2019/06/screenshot_6-3-360x270.png', 'https://memepedia.ru/wp-content/uploads/2019/06/screenshot_5-3-360x270.png', 'https://memepedia.ru/wp-content/uploads/2019/06/screenshot_2-3-360x270.png', 'https://memepedia.ru/wp-content/uploads/2019/06/screenshot_1-3-360x270.png', 'https://memepedia.ru/wp-content/uploads/2019/06/photo_2019-06-07_18-39-04-360x270.jpg']

Зарегистрируйтесь или войдите

Регистрация через Google

Регистрация через Facebook

Регистрация через почту

Отправить без регистрации

Почта

Необходима, но никому не показывается

Отправить без регистрации

Почта

Необходима, но никому не показывается

By clicking “Отправить ответ”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

chromium/src/url — Git в Google

Layers

В этом каталоге есть несколько концептуальных уровней. Начиная с самого нижнего уровня вверх, они следующие:

Разбор

url_parse.* файлов являются синтаксическим анализатором. Этот код не выполняет преобразования строк. Его единственная задача — взять входную строку и разделить компоненты URL-адреса, насколько это возможно, для данного типа URL-адреса. Синтаксический анализ никогда не может дать сбой, он примет самое лучшее предположение. Этот уровень не имеет логики для определения типа применяемого синтаксического анализа URL, который необходимо применять на более высоком уровне (уровень «util» ниже).

Поскольку код синтаксического анализатора получен ( очень отдаленно от ) из некоторого кода в Mozilla, некоторые файлы синтаксического анализатора находятся в url/ Third_Party/mozilla/ .

Основной заголовок для вызова синтаксического анализатора: url/ Third_Party/mozilla/url_parse.h .

Канонизация

Файлы url_canon* являются канонизаторами. Этот код преобразует определенные компоненты URL-адресов или определенные типы URL-адресов в стандартную форму. Для некоторых опасных или недопустимых данных канонизатор сообщит, что URL-адрес недействителен, хотя он всегда будет стараться изо всех сил выводить результат (поэтому вызывающий код может, например, показать пользователю ошибку о том, что URL-адрес недействителен). Канонизатор пытается обеспечить как можно более последовательное представление без изменения значения URL-адреса.

Уровень канонизатора не зависит от типа строки модуля внедрения, поэтому весь вывод строк выполняется через объект-оболочку CanonOutput . Реализация вывода std::string представлена ​​в url_canon_stdstring.h .

Основной заголовок для вызова канонизатора: url/url_canon. h .

Utility

Файлы url_util* обеспечивают высокоуровневую оболочку анализатора и канонизатора. Хотя его можно вызывать напрямую, он разработан как основа для написания объектов-оболочек URL (позже GURL и объект KURL Blink используют уровень Utility для реализации низкоуровневой логики).

Код утилиты принимает решения о типах URL-адресов и вызывает правильные функции синтаксического анализа и канонизации для этих типов. Он предоставляет интерфейс для регистрации схем для конкретных приложений, которые имеют определенные требования. Совместное использование этой логики между KURL и GURL важно для согласованной обработки URL-адресов в приложении.

Основной заголовок для включения: url/url_util.h .

Google URL (GURL) и Origin

На самом высоком уровне предоставляется объект C++ для представления URL-адресов. Этот объект использует STL. Большинству пользователей нужен только этот слой. Включить url/gurl. h .

Также на этом уровне находится объект Origin, который существует для принятия решений о безопасности в Интернете. Включить url/origin.h .

Историческая справка

Изначально этот код был отдельной библиотекой, предназначенной для встраивания как в Chrome (который использует STL), так и в WebKit (который в то время не использовал STL). В результате синтаксический анализ, канонизация и служебный код не могли использовать STL или любой другой общий код в базе Chromium.

Когда WebKit был разветвлен в репозитории Chromium и переименован в Blink, это ограничение было несколько ослаблено. Blink по-прежнему предоставляет свой собственный объект URL, используя свой собственный строковый тип, поэтому изоляция, которую обеспечивает уровень Utility, по-прежнему полезна. Но некоторые строки STL и вызовы базовых функций постепенно добавлялись туда, где это возможно.

В чем разница между атрибутами href и src? — HTML FAQ

aubsrey

, 1:20 1

Вопрос

В чем разница между атрибутами href и src ?

Ответ

Атрибут href указывает местоположение (URL) ресурса, на который указывает элемент привязки, или местоположение связанного ресурса, например таблицы стилей. В то время как атрибут src используется для встраивания ресурса (обычно URL-адреса) в документ, подумайте о встроенных изображениях ( ) и , 8:19вечера 3

Как уже упоминалось, href запрашивает ресурс, такой как веб-страница, обработчик форм, справочная страница блочной цитаты или таблица стилей. Во многих случаях (за исключением таблиц стилей) ссылка открывает новую веб-страницу, с которой кнопка «Назад» должна вернуть нас на предыдущую страницу.

src указывает ресурс, встроенный в текущий документ, например img, видео, аудио или сценарий. Браузер будет распределять пространство экрана в зависимости от физических размеров встроенного объекта. href не содержит такого положения.

15 лайков

рубин7325823337 4

Что означает href?
Спасибо!

1 Нравится

мтф 5

 HTTP-ссылка
 

, где HT означает HyperText , поэтому у нас есть HyperTextReference или href .

Якоря привязаны к тому, за что они цепляют , отсюда и название, данное навигационным ссылкам (сайтовым или внешним), , где «а» означает якорь . Мы можем принять это во внимание и дать href другое имя, которое расширяет просторечие… ссылка на хук . Это сленг. Тем не менее, действительный псевдоним для гипертекстовая ссылка .

: элемент Anchor - HTML: язык гипертекстовой разметки | МДН

5 лайков

мяу0056705245 6

как мы загружаем свои фотографии на сайт

mtf

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *