Просмотр исходного кода

Set user agent for RSS feed requests

jeremystretch 2 лет назад
Родитель
Сommit
6e6e8fa2d9
1 измененных файлов с 5 добавлено и 1 удалено
  1. 5 1
      netbox/extras/dashboard/widgets.py

+ 5 - 1
netbox/extras/dashboard/widgets.py

@@ -4,6 +4,7 @@ from hashlib import sha256
 
 
 import feedparser
 import feedparser
 from django import forms
 from django import forms
+from django.conf import settings
 from django.contrib.contenttypes.models import ContentType
 from django.contrib.contenttypes.models import ContentType
 from django.core.cache import cache
 from django.core.cache import cache
 from django.template.loader import render_to_string
 from django.template.loader import render_to_string
@@ -208,7 +209,10 @@ class RSSFeedWidget(DashboardWidget):
         if feed_content := cache.get(self.cache_key):
         if feed_content := cache.get(self.cache_key):
             feed = feedparser.FeedParserDict(feed_content)
             feed = feedparser.FeedParserDict(feed_content)
         else:
         else:
-            feed = feedparser.parse(self.config['feed_url'])
+            feed = feedparser.parse(
+                self.config['feed_url'],
+                request_headers={'User-Agent': f'NetBox/{settings.VERSION}'}
+            )
             if not feed.bozo:
             if not feed.bozo:
                 # Cap number of entries
                 # Cap number of entries
                 max_entries = self.config.get('max_entries')
                 max_entries = self.config.get('max_entries')