Как получить атрибут src изс питоном - PullRequest
1 голос
/ 09 июля 2019

Я собираю данные с одного сайта, и мне нужно найти один img.Я получаю это, но вывод не то, что мне нужно.

Я пытался искать решения в Интернете, менять код, но ничего не получалось.

r = requests.get(baseurl)
content = r.content
soup = BeautifulSoup(content, "html.parser")

images = soup.findAll('img')[1]
print(images)

Вывод получился:

<img src="https://cdn.rubyrealms.com/images/WKpivrdGBJJ9p6etIY2aJpixikFj4vnpmpPR9pXjK4Y8K.png" style="border-radius: 5px"/>

Вывод мне нужен:

cdn.rubyrealms.com/images/WKpivrdGBJJ9p6etIY2aJpixikFj4vnpmpPR9pXjK4Y8K.png

(я пробовал печатать (images.text))

Ответы [ 2 ]

1 голос
/ 09 июля 2019

вы можете получить содержимое src тега img, используя;

images = soup.findAll('img')[1]
print(images.get("src"))

или

images = soup.findAll('img')[1]
print(images['src'])

Выход

https://cdn.rubyrealms.com/images/WKpivrdGBJJ9p6etIY2aJpixikFj4vnpmpPR9pXjK4Y8K.png

Проблема с print(images.text) заключается в том, что он используется для извлечения текста между двумя тегами, и вы хотите извлечь текст, который находится внутри самого тега.

Надеюсь, это поможет вам:)

1 голос
/ 09 июля 2019

Вот пример, который вы можете адаптировать:

parser.feed('<img src="python-logo.png" alt="The Python logo">')
Start tag: img
attr: ('src', 'python-logo.png')

ССЫЛКА: https://docs.python.org/3/library/html.parser.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...