У меня есть HTML-файл, содержащий код для карты изображений с более чем 200 ссылками, например:

<area shape="RECT" coords="410, 7, 438, 35" href="/ItemDetails.jsp?item=os_landranger_1"/>

Проблема в том, что настоящие ссылки неверны: мне нужно заменить их правильными URL-адресами, которые получены из названия продукта и ссылочного номера, которые есть в файле CSV.

По сути, мне нужен специализированный Find and Replace, который прочитает первую ссылку, получит заголовок и ссылку. нет. из CSV и введите их в HTML в правильном формате (то есть с пробелами, замененными на _), прежде чем переходить к следующему, и так далее. Ссылки должны выходить на другой конец, как это:

<area shape="RECT" coords="410, 7, 438, 35" href="product/1_-_Shetland_%C2%96_Yell%2C_Unst_and_Fetlar_9780319228074" />

В этом случае заголовок в CSV будет выглядеть так: «1 - Шетланд - Йелл, Унст и Фетлар» и ссылка. нет. будет 9780319228074

Есть ли способ сделать это, желательно бесплатно?

РЕДАКТИРОВАТЬ:

Мне удалось сделать это с помощью Excel. Сначала я импортировал теги в пустую книгу в формате CSV, указав Excel использовать «в качестве разделителя». Затем я импортировал список заголовков в новый столбец, а затем восстановил тег в пустой ячейке с помощью оператора &, используя список заголовков для замены старого URL. Немного поиска и замены для преобразования запятых и амперсандов в HTML-коды, затем копирование и вставка формулы в остальные строки, и вуаля, успех.

Спасибо всем, кто ответил.

2 ответа2

1

Это довольно сложный поиск и замена. Лично я не знаю ни одного редактора, который мог бы сделать это. Как ссылки на странице теперь соотносятся с файлом CSV?

Это легко сделать в скрипте. Его нетрудно собрать в Perl-скрипт (или Python, что вы предпочитаете). У вас есть навыки написания сценариев или кто-нибудь знает?

0

Если они используют общую систему упорядочения (или csv можно упорядочить в соответствии с тем, что есть в текущем HTML-файле), вы можете использовать find и replace для замены href на ';', а затем использовать текст в столбцах для получения = .. , Если ваш порядок такой же, вы можете просто заменить весь столбец (не забудьте добавить /> в конец строки и прочитать часть href). Если нет схемы заказа, основанной на том, что я вижу (в приведенном выше примере), вы ничего не можете сделать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .