diff --git a/README.md b/README.md
index f0ba082c..ce8d6061 100644
--- a/README.md
+++ b/README.md
@@ -20,9 +20,9 @@ Clipboard is **"rubber"**. There is an accumulation before the insertion!
* **Ctrl + Up, Down, PageUp, PageDown, Home, End** - move selected items in the list.
### Extra:
* Multiple selections in lists only with Space key (as in file managers).
-* Ability to import IPTV into bouquet (Neutrino WEBTV) from m3u files.
-* Tool for downloading picons from lyngsat.com.
-* Preview (playing) IPTV or other streams directly from the bouquet list(should be installed VLC).
+* Ability to import IPTV into bouquet (Neutrino WEBTV) from m3u files.
+* Ability to download picons and update satellites (transponders) from web.
+* Preview (playing) IPTV or other streams directly from the bouquet list(should be installed VLC).
### Minimum requirements:
Python >= 3.5.2 and GTK+ 3 with PyGObject bindings.
#### Note.
diff --git a/app/tools/satellites.py b/app/tools/satellites.py
index 83863eda..420fee52 100644
--- a/app/tools/satellites.py
+++ b/app/tools/satellites.py
@@ -2,9 +2,8 @@
for replace or update current satellites.xml file.
"""
import re
-from enum import Enum
-
import requests
+from enum import Enum
from html.parser import HTMLParser
from app.eparser import Satellite, Transponder
@@ -71,6 +70,7 @@ class SatellitesParser(HTMLParser):
pass
def get_satellites_list(self, source):
+ """ Getting complete list of satellites. """
self.reset()
self._rows.clear()
self._source = source
@@ -156,26 +156,25 @@ class SatellitesParser(HTMLParser):
def get_transponders_for_lyng_sat(self, trs):
""" Parsing transponders for LyngSat """
frq_pol_pattern = re.compile("(\d{4,5}).*([RLHV])(.*\d$)")
- sr_fec_pattern = re.compile("(\d{4,5})-(\d/\d) (.*PSK).*$")
- # sys_pattern = re.compile("(DVB-S|DVB-S2).*")
+ sr_fec_pattern = re.compile("^(\d{4,5})-(\d/\d)(.+PSK)?(.*)?$")
+ sys_pattern = re.compile("(DVB-S[2]?)(.*)?")
zeros = "000"
for r in filter(lambda x: len(x) > 8, self._rows):
freq = re.match(frq_pol_pattern, r[2])
if not freq:
continue
frq, pol = freq.group(1), freq.group(2)
-
sr_fec = re.match(sr_fec_pattern, r[-3])
if not sr_fec:
continue
sr, fec, mod = sr_fec.group(1), sr_fec.group(2), sr_fec.group(3)
- # if not sys:
- # continue
- sys = ""
+ mod = mod.strip() if mod else "Auto"
+ sys = re.match(sys_pattern, r[-4])
+ if not sys:
+ continue
+ sys = sys.group(1)
trs.append(Transponder(frq + zeros, sr + zeros, pol, fec, sys, mod, None, None, None))
- return trs
-
if __name__ == "__main__":
pass
diff --git a/app/ui/satellites_dialog.glade b/app/ui/satellites_dialog.glade
index 23de40ff..b6c6121a 100644
--- a/app/ui/satellites_dialog.glade
+++ b/app/ui/satellites_dialog.glade
@@ -1456,6 +1456,7 @@
False
Satellites update
True
+ 480
True
dialog
True
@@ -1868,7 +1869,6 @@