Как мне проанализировать мои собственные HTML файлы в Flask? - PullRequest
1 голос
/ 10 июля 2020

Я пытаюсь создать карту сайта для своего веб-сайта вместо того, чтобы запускать ее через веб-сайт, который сделает это за меня. Это потому, что веб-сайт меняется довольно часто.

Я нашел в Интернете код, который выполняет его часть:

@app.route('/sitemap.xml', methods=['GET'])
def sitemap():
    try:
      """Generate sitemap.xml. Makes a list of urls and date modified."""
      pages = []
      seven_days_ago = (datetime.datetime.now() - datetime.timedelta(days=7)).date().isoformat()
      for rule in app.url_map.iter_rules():
          if "GET" in rule.methods and len(rule.arguments) == 0:
               pages.append( ["..." + str(rule.rule), seven_days_ago])
 
      sitemap_xml = render_template('pages/sitemap_template.xml', pages=pages)
      response = make_response(sitemap_xml)
      response.headers["Content-Type"] = "application/xml"

      return response
    except Exception as e:
        return(str(e))

Он работает для создания базовой c карты сайта. Хорошо, достаточно просто.

Я хочу добавить приоритет в метатеги каждой страницы, а затем построить на его основе карту сайта. Этот SO вопрос / ответ охватывает это, но он использует beautifulsoup и urllib и больше ориентирован на Интернет, а не на локальный экземпляр.

Итак, я полагаю, мне нужно render_template для каждого маршрута (в данном случае rule.rule) затем проанализируйте его, возможно, с помощью BeautifulSoup и получите приоритет. Понятия не имею, как это сделать. Есть ли способ ПОЛУЧИТЬ каждый шаблон по его маршруту, чтобы я мог его проанализировать?

1 Ответ

0 голосов
/ 14 июля 2020

В итоге я использовал beautifulsoup4 на этих маршрутах. Жалко, что flask, похоже, не предлагает более прямого пути для этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...