Как поменять много url в 4000 html файлов?
Есть абсолютно идентичных 4000 html файлов . В них есть фраза qwerty , как вместо qwerty заменить на имя файла?
Так как все файлы пронумерованы по порядку от 1 до 4000, то можно вместо qwerty вбить по порядку цифры в каждый файл: 1..2..3..4..5......4000
В данном скриншоте вместо qwerty нужно поставить 1601, в следующем файле нужно вместо qwerty поставить 1602 и так далее.

Ответы (2 шт):
Я бы написал небольшой скрипт на nodejs. Я писать его полностью сюда не буду, но попробую дать наводку
Получил все файлы из папки
var files = fs.readdirSync(dir); for (var i in files){ //тут получил бы имя файла и вызвал ф-ю для замены текста }Написал ф-ю для замены текста
fs.readFile(someFile, 'utf8', function (err,data) { if (err) { return console.log(err); } var result = data.replace(/string to be replaced/g, 'replacement'); fs.writeFile(someFile, result, 'utf8', function (err) { if (err) return console.log(err); }); });
Ну или можно код ф-ии для замены прям в цикл вставить. Ну как-то так.
Для примера вот так это можно сделать на питоне. Соответственно необходимо заменить путь до файлов в open (вместо D:\ на свой). В каждом файле от 1.html до 3999.html будут заменены все слова qwerty на номер файла. Если это файл 20.html и qwerty-12 то будет 20-12. Только предварительно сохраните ваши файлы, т.к решение я не проверял.
for i in range(1,4000):
try:
with open('D:\\'+str(i)+'.html', 'r') as f:
text = f.read()
text = text.replace('qwerty',str(i))
with open('D:\\'+str(i)+'.html', 'w') as f:
f.write(text)
except:
print ("Файл не существует")