Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Python: Web

Войти
Регистрация
Восстановить пароль
 
weblord
1 / 1 / 0
Регистрация: 16.10.2016
Сообщений: 111
#1

Как в lxml найти элемент по атрибуту name? - Python

07.01.2017, 17:17. Просмотров 280. Ответов 6
Метки нет (Все метки)

На этой этой страничке нашел методы парсинга по значению id и class, а вот по name нету Вопрос в заголовке)
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.01.2017, 17:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как в lxml найти элемент по атрибуту name? (Python):

Как установить lxml? - Python
Для модуля LXML требует libxml2 и libxslt. Поискал информации в интернете, и как я понял, для Windows надо скачать бинарник (Binary...

Как установить lxml? - Python
При компиляции вылазит ошибка как исправить? Что я использую lxml 3.3.5 python 3.4.1 MinGW 0.6.2 beta

Как установить модуль lxml? - Python
Подскажите как установить модуль lmxl на python3.3 ?

Как в lxml составить запрос xpath? - Python
import requests import lxml.html import re session = requests.session() openUrl = session.get('http://www.artlebedev.ru/') ...

Как отсортировать объекты по атрибуту? - Python
Недавно начал изучать питон 2.7, так что если вопрос простой - ногами не пинать. Имеем: class b: ...

Как через lxml достать сразу текст тега и текст подтега? - Python
Имеется такой html: <h3> <a>Text1<span>Text2</span></a> </h3> Как можно достать сразу и Text1, и Text2? Я пользовался...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Zuzik
237 / 222 / 38
Регистрация: 11.06.2012
Сообщений: 1,446
07.01.2017, 19:00 #2
используем xpath http://lxml.de/xpathxslt.html#the-xpath-method http://lxml.de/tutorial.html .
1
alex925
2506 / 2157 / 507
Регистрация: 19.03.2012
Сообщений: 8,359
07.01.2017, 21:15 #3
А лучше cssselect, это намного более удобно.

Python
1
2
3
4
5
6
7
import requests
import lxml.html as html
 
r = requests.get('http://www.cyberforum.ru/python-web/thread1895590.html').text
parser = html.fromstring(r)
elem = parser.cssselect('meta[name="keywords"]')[0]
print(elem.get('content'))
1
Garry Galler
761 / 583 / 158
Регистрация: 28.10.2013
Сообщений: 1,374
08.01.2017, 01:10 #4
Цитата Сообщение от alex925 Посмотреть сообщение
А лучше cssselect, это намного более удобно.
Поддерживаю, так как сам заметил, что с тех пор как стал писать на python, то вместо xpath всегда пишу selector для парсинга html.
Python
1
2
3
4
5
6
7
8
9
10
css_date_font        = 'font[color="#004499"]' # элемент font c атрибутом color равным #004499
css_link_and_text    = 'dl.nam li' # все элементы li внутри списка определений(dl) класса num
css_count_documents  = "h2[class='hdr2 hdtop'] > small.cnt > strong" # текст помеченный как strong внутри тега small класса cnt внутри заголовка h2 класса 'hdr2 hdtop'
css_find_url         = 'div.spi a'  #все ссылки\anchors внутри div класса spi
css_find_status      = 'div.spi span b'  # тег b внутри тега span внутри div класса spi
css_warnings         = 'div.warnings > div.error'  # dev класса error чей непосредственный родитель div класса warnings
css_edition          = 'select.form option'  # все option внутри селекта класс form
css_print_url        = 'ul#topnav li a' # все anchors внутри элементов li маркированного списка ul c id topnav
css_title            = 'title' # просто тег title
css_profile          = 'div.profile table.table_vi td:nth-child(3)'  # каждая третья ячейка (td) в таблице класса table_vi внутри div класса profile
1
weblord
1 / 1 / 0
Регистрация: 16.10.2016
Сообщений: 111
08.01.2017, 18:03  [ТС] #5
xpath - это понятно, просто думал, что есть метод конкретно для поиска имени (иногда это удобнее)
0
alex925
2506 / 2157 / 507
Регистрация: 19.03.2012
Сообщений: 8,359
08.01.2017, 18:10 #6
Цитата Сообщение от weblord Посмотреть сообщение
просто думал, что есть метод конкретно для поиска имени (иногда это удобнее)
Непонятно, что ты имеешь ввиду, я тебе показал метод поиска элемента по его имени, что ещё нужно то?
0
Jabbson
Модератор
Эксперт по компьютерным сетям
3141 / 2219 / 455
Регистрация: 03.11.2009
Сообщений: 7,001
Записей в блоге: 3
08.01.2017, 20:13 #7
Если нужно все же xpath:
Код
//input[@name="email"]
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.01.2017, 20:13
Привет! Вот еще темы с ответами:

Найти элемент в HTML по атрибуту class - C#
<div class="bomb-loader" style=""></div> Нужно найти класс "bomb-loader" и из тега style взять данные. С помощью HtmlDocument думаю...

XML: удалить элемент по атрибуту - C#
Есть XML файл: <CL n="Test Group"> <CL n="name1" /> <CL n="name2" /> <CL n="name3" /> </CL> Необходимо по...

Найти ссылку по атрибуту и открыть ее - JavaScript
Господа есть такая задача: Находим ссылку с id='MyLink' и открываем ее в этом же окне. ссылку я нашел: $('#MyLink') а как...

Найти число в HTML по по атрибуту. (Парсинг сайта) - C#
Мне нужно на страницах сайта найти числа в ссылке (тег <a>) Сама ссылка имеет такую структуру: <a href="http://TheSite.com/...."...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
08.01.2017, 20:13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru