Какая формула xpath будет переходить с главной страницы по условию(названию анкора) и находить заданные данные?
Приветствую! Как добавить к формуле: //a[starts-with(@href,'mailto')]/@href дополнительное условие: переход по активным анкорам с определенным названием(допустим about us, contact и тд) и повторением первичной формулы //a[starts-with(@href,'mailto')]/@href ? То есть если были получены результаты при первой итерации //a[starts-with(@href,'mailto')]/@href - то переходить дальше по сайту не нужно, если результатов нет - переход по заданным названиям активных анкоров и повтор функции поиска //a[starts-with(@href,'mailto')]/@href
Дополнительно:
Никак. Создайте новый вопрос с кодом Вашего парсера и перечислите то, что Вы пытаетесь реализовать.
xpath сам никуда не переходит. Это инструмент поиска по нодам внутри уже полученного хтмл/хмл, а не инструмент запросов.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для того чтобы создать формулу XPath, которая будет переходить с главной страницы по условию (названию анкора) и находить заданные данные, нам необходимо определить структуру HTML-кода страницы и использовать соответствующий XPath запрос.
Предположим, что на главной странице у нас есть список ссылок, и мы хотим найти определенные данные на странице, перейдя по определенной ссылке с определенным названием анкора. Для этого мы можем использовать следующую формулу XPath:
//a[text()='Название анкора']/@href//a[text()='Название анкора']/@href
В данной формуле мы ищем элемент с текстом "Название анкора" и получаем значение атрибута href этого элемента. Теперь, имея URL ссылки, на которую нужно перейти, мы можем использовать этот URL для загрузки страницы и извлечения нужных данных.
Пример использования данной формулы в коде на языке программирования Python с использованием библиотеки lxml:
import requests from lxml import html # URL главной страницы main_page_url = 'https://example.com' # Получаем HTML-код главной страницы main_page = requests.get(main_page_url) main_page_tree = html.fromstring(main_page.content) # Формула XPath для поиска ссылки по названию анкора xpath = "//a[text()='Название анкора']/@href" # Получаем URL ссылки link_url = main_page_tree.xpath(xpath)[0] # Загружаем страницу по найденному URL link_page = requests.get(link_url) link_page_tree = html.fromstring(link_page.content) # Далее можно продолжить извлечение нужных данных с загруженной страницы
Таким образом, с помощью данной формулы XPath мы можем перейти с главной страницы по условию (названию анкора) и извлечь нужные данные с найденной страницы.