Страницы

Поиск по вопросам

понедельник, 8 апреля 2019 г.

Получение значения аттрибута “name” тэга “input”

Как получить значение атрибута name всех тэгов input ?
То есть если был тэг

то в массиве должно быть только значение "value". Я знаю, что для div'a это можно сделать так:
titles = [div['title'] for div in soup.find_all('div', title = True)]
Но если пробую просто заменить все div на input, а title на name, то сталкиваюсь с проблемой, что input - зарезервированное слово (возможно, проблема не в этом, но все равно ничего не работает)


Ответ

Попробуйте:
input_names = [tag['name'] for tag in soup.select('input[name]')]
Проверка:
import requests from bs4 import BeautifulSoup
rs = requests.get('https://ru.stackoverflow.com/questions/830858/') root = BeautifulSoup(rs.content, 'html.parser')
input_names = [tag['name'] for tag in root.select('input[name]')] print(input_names) # ['q', '_id_', 'qualityBanWarningShown', 'referrer', ...

Комментариев нет:

Отправить комментарий