blog details
author


blog detail

사이트맵을 만들고 시간별로 수동으로 업데이트하면 얼어붙는 날이 어떨지. 또는 두 번째 작업 일회성으로 반복되는 월간 구독료를 지불하는 것도 현명한 결정이 아닙니다.

마블링이 좋은 소고기를 먹는 느낌처럼 더 좋은 방법을 찾고 있다면 바로 이 작품입니다. 이 기사에서는 Flask 앱용 동적 사이트맵 xml 개발에 대해 설명합니다. 갑시다!

목차: Flask 앱 동적 사이트맵 XML 자습서

잠시 후 이 요리의 각 패키지에 대한 자세한 내용을 살펴보겠습니다.

파이썬 패키지: urlparse, render_template, make_response

늘 그렇듯이 기본 기능을 골격화해야 합니다. 맛있고 놀라운 동적 사이트맵 xml을 개발하는 데 필요한 패키지 목록은 다음과 같습니다.

  • from urllib . parse import urlparse
  • From flask import render_templte, make_response

잠시 후 이 요리의 각 패키지에 대한 자세한 내용을 살펴보겠습니다.

앱의 최상위 도메인 구문 분석

먼저 URL 매핑을 결정하기 전에 최상위 도메인 주소를 찾는 것이 필수적입니다. 호의를 더 잘 맛보려면 여기에 urlparse가 필요합니다. 아래는 다음과 같은 샘플입니다.

host_components = urlparse ( request . host_url )
host_base = host_components . scheme + "://" + host_components . netloc

정적 URL 목록

각 URL을 생성하기 전에 일부 경로가 변수에 의해 설정되기 때문에 정적 및 동적 URL을 분리해야 합니다.

정적 URL 목록을 만들고 어떤 유형의 정적 URL이 목록에 추가되는지 규칙을 지정해야 합니다. 다음은 코드 샘플입니다.

static_urls = list ()
for rule in app . url_map . iter_rules ():
if not str ( rule ). startswith ( "/inactive" ):
if "GET" in rule . methods and len ( rule . arguments ) == 0 :
url = {
"loc" : f " { host_base }{ str ( rule ) } "
}
static_urls . append ( url )

이 요리를 요리하려면 Flask 내장 메서드인 url_map, startswith 필요합니다.

동적 URL 목록

변수 URL 경로를 가져오기 위해 미리 Mongo에서 데이터 집합을 설정하고 함수에서 호출할 수 있습니다. 코드 샘플은 다음과 같습니다.

dynamic_urls = list ()
dynamicURL variable = db .sample. find ({})

사이트맵 XML 템플릿

서버 측에서 동적 데이터 피드를 캡처하려면 프런트엔드 html 템플릿에서 Jinja2를 사용해야 합니다. 코드 샘플은 다음과 같습니다.

{% for url in static_urls %}
< url >
< loc > {{ url["loc"] }} </ loc >
</ url >
{% endfor %}
{% for url in dynamic_urls %}
< url >
< loc > {{ url["loc"] }} </ loc >
</ url >
{% endfor %}

응답 헤더 사용자 지정

마지막으로 다른 경로와 다른 사이트맵 xml 헤더를 사용자 정의해야 합니다. 헤더를 사용자 정의하기 위해 make_response를 사용할 수 있습니다.

response = make_response ( xml_sitemap )
response . headers [ "Content-Type" ] = "application/xml"

동적 Sitemap XML의 전체 Python 스크립트

AWS EC2에서 Flask 앱 배포의 전체 스크립트 및 명령

Chapter 74 – MongoDB를 사용한 Flask 앱 동적 사이트맵 XML에 관심이 있는 경우, 'Chapter 74 + 플라스크 동적 사이트맵'이라는 메시지를 추가하여 뉴스레터를 구독 하세요. . 귀하의 사서함으로 스크립트를 즉시 보내드립니다.

74장 – MongoDB를 사용한 Flask 앱 동적 사이트맵 XML을 즐겁게 읽으시기 바랍니다. 그렇다면 아래 나열된 항목 중 하나를 수행하여 지원해 주세요. 항상 채널에 도움이 되기 때문입니다.

  • PayPal( paypal.me/Easy2digital )을 통해 채널을 지원하고 기부하세요.
  • 제 채널 구독하시고 알림벨을 켜주세요 Easy2Digital 유튜브 채널 .
  • 내 페이지 팔로우 및 좋아요 Easy2Digital Facebook 페이지
  • #easy2digital 해시태그를 사용하여 소셜 네트워크에 기사를 공유하세요.
  • Easy2Digital 최신 기사, 비디오 및 할인 코드를 받으려면 주간 뉴스레터에 가입하십시오.
  • 독점적인 혜택을 누리려면 Patreon을 통해 월간 멤버십을 구독하세요( www.patreon.com/louisludigital ).
이 게시물을 공유하세요

현재 댓글이 없습니다...

shape shape

뉴스레터에 가입하세요!

독점적인 자동차 스타일 콘텐츠 업데이트 및 특가를 받으세요