Как использовать сторожевой таймер для запуска скрипта каждый раз, когда файл изменяется с определенным словом? - PullRequest
0 голосов
/ 31 января 2019

Таким образом, приведенный ниже скрипт ищет ключевые слова в файле HTML и записывает значения найденных ключевых слов в файл style.css:

from collections import OrderedDict
keyword = {
"row": '''
    .row {
    display: -ms-flexbox;
    display: flex; 
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
    }'''
    #etc
        }   

with open('index.html', 'r') as file:
   with open('style.css', 'a') as newfile:
      lines = file.readlines()
      for line in lines:
         if 'class="' in line:
            to_replace = line.split('"')[1].split()
            to_replace = OrderedDict.fromkeys(to_replace)
            for key in to_replace:
                if key in keyword:
                    newfile.write(keyword[key])
                    keyword[key] = ''

Файл HTML:

<div class="row">some content</div>
<div class="row">some content2</div> etc

Вывод в style.css:

.row {
        display: -ms-flexbox;
        display: flex; 
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-right: -15px;
        margin-left: -15px;
        }

Примечание: row записан в формате HTML дважды, но отображается в стилях только один раз.

Как выполнить код каждый раз, когда файлindex.html сохранено И определенное ключевое слово из словаря найдено (с использованием события watchdog on_modified) ?а также, как предотвратить дублирование команд CSS в style.css?

...