@ImSoSorry

Как парсить названия ссылок на php?

Доброе время суток, сталкнулся с проблемой, у заказчика есть старый сайт, но нет доступа к БД.

Необходимо спарсить названия ссылок категорий, структура ссылки проста:
<a href="/clothing/jacket/">Jacket</a>
<a href="/clothing/Socks/">Socks</a>

и т.д.
(таких категорий довольно много, руками не варик)

Вопрос:
Как мне получить только названия всех ссылок на странице при помощи php? Искал в интернетах, ничего похожего не нашел. Новичек.

UPD: В дальнейшем цель восстановить БД из полученных данных
  • Вопрос задан
  • 608 просмотров
Решения вопроса 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
$html = file_get_contents("http://site.org/path/index.php");
if (preg_match_all("#<a href=\"[^\"]+\">(.+?)</a>#", $html, $regs, PREG_PATTERN_ORDER))
{
    foreach($regs[1] as $v) echo("{$v}\n");
}

Но если вы даже этого не знаете - далеко от этого кода и не уйдёте... Наймите специалиста.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
Stalker_RED
@Stalker_RED
Это сюр какой-то. Доступ к БД украли инопланетяне?

Ну вот регулярка, например https://regex101.com/r/TuQdqY/1/
Или почитай про какой-нибудь парсер нормальный, типа dom-crawler, DiDom или zend_dom_query
Ответ написан
Комментировать
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
но нет доступа к БД.
А к коду? Или у заказчика вообще нету сайта, а сайт хз чей?
Ответ написан
Комментировать
@rotarepmipoleved
$pattern — https://regex101.com/r/Qsocuh/1

preg_match_all($pattern, $html, $match)
Далее работаем с $match
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы