diff --git a/playlist.m3u b/playlist.m3u index d307ada..fcd7187 100644 --- a/playlist.m3u +++ b/playlist.m3u @@ -1,59 +1 @@ #EXTM3U -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="Movies" tvg-name="PL | HBO2 HD",PL | HBO2 HD -http://185.236.229.62:9981/play/a05x -#EXTINF:-1 tvg-id="SkySpMainEvHD.uk" tvg-logo="https://i.ibb.co/gwCk7Bc/sky-m-event-uhd.png" group-title="Sports" tvg-name="UK: Sky Sports Main Event UHD",UK: Sky Sports Main Event UHD -https://a1xs.vip/2000015 -#EXTINF:-1 tvg-id="BBC.One.Lon.HD.uk" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/main/countries/united-kingdom/bbc-one-uk.png" group-title="๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom" tvg-name="BBC One",BBC One -http://31.121.110.30:4000/play/a002/index.m3u8 -#EXTINF:-1 tvg-id="BBC.Two.HD.uk" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/main/countries/united-kingdom/bbc-two-uk.png" group-title="๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom" tvg-name="BBC Two",BBC Two -http://31.121.110.30:4000/play/a003/index.m3u8 -#EXTINF:-1 tvg-id="ITV1.HD.uk" tvg-logo="https://raw.githubusercontent.com/tv-logo/tv-logos/main/countries/united-kingdom/itv-1-uk.png" group-title="๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom" tvg-name="ITV 1",ITV 1 -http://31.121.110.30:4000/play/a004/index.m3u8 -#EXTINF:-1 tvg-id="SkySp.Mix.HD.uk" tvg-logo="https://i.ibb.co/7kYj5gc/sky-mix.png" group-title="๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom" tvg-name="Sky Sports Mix FHD",Sky Sports Mix FHD -https://a1xs.vip/2000008 -#EXTINF:-1 tvg-id="SkySp.F1.uk" tvg-logo="https://i.imgur.com/aetKPNi.png" group-title="๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom" tvg-name="UK: Sky Sports F1 UHD",UK: Sky Sports F1 UHD -https://a1xs.vip/2000016 -#EXTINF:-1 tvg-id="TNT.Sports.Ultimate.uk" tvg-logo="https://i.ibb.co/QqGdJnM/TNTSprts-U.png" group-title="๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom" tvg-name="UK: TNT Sports Ultimate UHD [4K]",UK: TNT Sports Ultimate UHD [4K] -https://a1xs.vip/2000031 -#EXTINF:-1 tvg-id="Astro.Sports.UHD.my" tvg-logo="https://i.ibb.co/3hW45Pb/Astro-Sports-UHD.png group-title=" group-title="๐Ÿ‡ฒ๐Ÿ‡พ Malaysia" tvg-name="MY: Astro Sports UHD [4K]",MY: Astro Sports UHD [4K] -https://a1xs.vip/9000001#EXTINF:-1 group-title="Poland",PL | Golf Channel -#EXTINF:-1 tvg-id="Astro.Sports.UHD.my" tvg-logo="https://i.ibb.co/3hW45Pb/Astro-Sports-UHD.png group-title=" group-title="๐Ÿ‡ฒ๐Ÿ‡พ Malaysia" tvg-name="MY: Astro Sports UHD [4K]",MY: Astro Sports UHD [4K] -https://a1xs.vip/9000001 -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡ต๐Ÿ‡ฑ Poland" tvg-name="PL | Golf Channel",PL | Golf Channel -http://185.236.229.62:9981/play/a03m -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡ต๐Ÿ‡ฑ Poland" tvg-name="PL | HBO HD",PL | HBO HD -http://185.236.229.62:9981/play/a06k -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡ต๐Ÿ‡ฑ Poland" tvg-name="PL | HBO2 HD",PL | HBO2 HD -http://185.236.229.62:9981/play/a05x#EXTINF:-1 group-title="Turkey",TR | TV 8.5 -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡น๐Ÿ‡ท Turkey" tvg-name="TR | TV 8.5",TR | TV 8.5 -http://live-tv.uk:8080/live/Crach_Iptv/Hekxbjelsofjur628264772new/735.ts -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡บ๐Ÿ‡ฆ Ukraine" tvg-name="UA | Continent-E",UA | Continent-E -http://95.67.12.82:9083/ -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡บ๐Ÿ‡ฆ Ukraine" tvg-name="UA | Detinets",UA | Detinets -http://193.151.107.120:8991/ -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡บ๐Ÿ‡ฆ Ukraine" tvg-name="UA | Dorama",UA | Dorama -http://95.67.12.82:9046/ -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡บ๐Ÿ‡ฆ Ukraine" tvg-name="UA | FreeDom",UA | FreeDom -http://95.67.12.84:10304/ -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡บ๐Ÿ‡ฆ Ukraine" tvg-name="UA | KinoKazka",UA | KinoKazka -http://95.67.12.82:9084/ -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡บ๐Ÿ‡ฆ Ukraine" tvg-name="UA | One Planet",UA | One Planet -http://95.67.12.82:9088/ -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡บ๐Ÿ‡ฆ Ukraine" tvg-name="UA | PlusPlus",UA | PlusPlus -http://proxpanel.pro/play/live.php?mac=00:1A:79:D1:04:17&stream=630128&extension=ts&play_token=0 -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡บ๐Ÿ‡ฆ Ukraine" tvg-name="UA | Preshyi",UA | Preshyi -http://193.151.107.120:10001/ -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡บ๐Ÿ‡ฆ Ukraine" tvg-name="UA | Rozpakuy TV",UA | Rozpakuy TV -http://109.108.92.149:63182/ -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡บ๐Ÿ‡ฆ Ukraine" tvg-name="UA | Suspline Kultura",UA | Suspline Kultura -http://zadyma.online:8880/play/live.php?mac=00:1A:79:01:7F:7E&stream=436343&extension=ts -#EXTINF:-1 tvg-id="" tvg-logo="" group-title="๐Ÿ‡บ๐Ÿ‡ฆ Ukraine" tvg-name="UA | Yedyni novyny",UA | Yedyni novyny -http://95.67.12.89:9018/ -#EXTINF:-1 tvg-id="MSG.(Madison.Square.Gardens).us" tvg-logo="https://i.postimg.cc/W1jFdzt4/MSG-Network-logo.png" group-title="๐Ÿ‡บ๐Ÿ‡ธ United States" tvg-name="MSG FHD",MSG FHD -https://a1xs.vip/4000001 -#EXTINF:-1 tvg-id="MSG.Plus.us" tvg-logo="https://i.postimg.cc/W1jFdzt4/MSG-Network-logo.png" group-title="๐Ÿ‡บ๐Ÿ‡ธ United States" tvg-name="MSG_PLUS FHD",MSG_PLUS FHD -https://a1xs.vip/4000002#EXTINF:-1 tvg-id="SkySpMainEvHD.uk" tvg-name="UK: Sky Sports Main Event UHD" tvg-logo="https://i.ibb.co/gwCk7Bc/sky-m-event-uhd.png" group-title="UHD | 4K",UK: Sky Sports Main Event UHD -#EXTINF:-1 tvg-id="MSG.Plus.us" tvg-logo="https://i.postimg.cc/W1jFdzt4/MSG-Network-logo.png" group-title="๐Ÿ‡บ๐Ÿ‡ธ United States" tvg-name="MSG_PLUS FHD",MSG_PLUS FHD -https://a1xs.vip/4000002 -#EXTINF:-1 tvg-id="New.England.Sports.Network.HDTV.(NESNHD).us" tvg-logo="https://i.postimg.cc/CxVDbJrS/nesn.png" group-title="๐Ÿ‡บ๐Ÿ‡ธ United States" tvg-name="NESN UHD [4K]",NESN UHD [4K] -https://a1xs.vip/4000080 diff --git a/playlist_update.log b/playlist_update.log index 5cb6a97..6a0064b 100644 --- a/playlist_update.log +++ b/playlist_update.log @@ -1,157 +1,8 @@ -[2025-06-27 18:01:15] INFO: Starting comprehensive playlist generation... -[2025-06-27 18:01:15] INFO: FORCE re-detecting countries for ALL existing channels... -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'Sky Sports Mix FHD' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom for: Sky Sports Mix FHD (matched: 'sky') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'NESN UHD [4K]' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ธ United States for: NESN UHD [4K] (matched: '.us') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'MSG FHD' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ธ United States for: MSG FHD (matched: '.us') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'MSG_PLUS FHD' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ธ United States for: MSG_PLUS FHD (matched: '.us') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UK: Sky Sports F1 UHD' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom for: UK: Sky Sports F1 UHD (matched prefix: 'uk:') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UK: TNT Sports Ultimate UHD [4K]' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom for: UK: TNT Sports Ultimate UHD [4K] (matched prefix: 'uk:') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'MY: Astro Sports UHD [4K]' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ฒ๐Ÿ‡พ Malaysia for: MY: Astro Sports UHD [4K] (matched prefix: 'my:') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'PL | HBO HD' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ต๐Ÿ‡ฑ Poland for: PL | HBO HD (matched prefix: 'pl |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'PL | HBO2 HD' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ต๐Ÿ‡ฑ Poland for: PL | HBO2 HD (matched prefix: 'pl |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Preshyi' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Preshyi (matched prefix: 'ua |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Suspline Kultura' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Suspline Kultura (matched prefix: 'ua |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | PlusPlus' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | PlusPlus (matched prefix: 'ua |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Detinets' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Detinets (matched prefix: 'ua |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | One Planet' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | One Planet (matched prefix: 'ua |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Rozpakuy TV' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Rozpakuy TV (matched prefix: 'ua |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | FreeDom' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | FreeDom (matched prefix: 'ua |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Dorama' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Dorama (matched prefix: 'ua |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | KinoKazka' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | KinoKazka (matched prefix: 'ua |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Continent-E' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Continent-E (matched prefix: 'ua |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Yedyni novyny' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Yedyni novyny (matched prefix: 'ua |') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'BBC One' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom for: BBC One (matched: 'bbc') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'BBC Two' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom for: BBC Two (matched: 'bbc') -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'ITV 1' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom for: ITV 1 (matched: 'itv') -[2025-06-27 18:01:15] INFO: Created backup: channels.txt.backup.20250627_180115 -[2025-06-27 18:01:15] INFO: FORCE updated ALL 23 channels (0 changes made) -[2025-06-27 18:01:15] INFO: Processing bulk_import.m3u with ROBUST parsing... -[2025-06-27 18:01:15] INFO: Pre-processing M3U content to fix common issues... -[2025-06-27 18:01:15] INFO: Processing 53 lines after pre-processing... -[2025-06-27 18:01:15] DEBUG: Successfully imported: Sky Sports Mix FHD โ†’ Sports -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'NESN UHD' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ธ United States for: NESN UHD (matched: '.us') -[2025-06-27 18:01:15] INFO: Auto-detected: 'NESN UHD' โ†’ ๐Ÿ‡บ๐Ÿ‡ธ United States -[2025-06-27 18:01:15] DEBUG: Successfully imported: NESN UHD [4K] โ†’ ๐Ÿ‡บ๐Ÿ‡ธ United States -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'MSG FHD' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ธ United States for: MSG FHD (matched: '.us') -[2025-06-27 18:01:15] INFO: Auto-detected: 'MSG FHD' โ†’ ๐Ÿ‡บ๐Ÿ‡ธ United States -[2025-06-27 18:01:15] DEBUG: Successfully imported: MSG FHD โ†’ ๐Ÿ‡บ๐Ÿ‡ธ United States -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'MSG_PLUS FHD' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ธ United States for: MSG_PLUS FHD (matched: '.us') -[2025-06-27 18:01:15] INFO: Auto-detected: 'MSG_PLUS FHD' โ†’ ๐Ÿ‡บ๐Ÿ‡ธ United States -[2025-06-27 18:01:15] DEBUG: Successfully imported: MSG_PLUS FHD โ†’ ๐Ÿ‡บ๐Ÿ‡ธ United States -[2025-06-27 18:01:15] DEBUG: Successfully imported: UK: Sky Sports Main Event UHD โ†’ Sports -[2025-06-27 18:01:15] DEBUG: Successfully imported: UK: Sky Sports F1 UHD โ†’ Sports -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UK: TNT Sports Ultimate UHD' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom for: UK: TNT Sports Ultimate UHD (matched prefix: 'uk:') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UK: TNT Sports Ultimate UHD' โ†’ ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom -[2025-06-27 18:01:15] DEBUG: Successfully imported: UK: TNT Sports Ultimate UHD [4K] โ†’ ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'MY: Astro Sports UHD' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ฒ๐Ÿ‡พ Malaysia for: MY: Astro Sports UHD (matched prefix: 'my:') -[2025-06-27 18:01:15] INFO: Auto-detected: 'MY: Astro Sports UHD' โ†’ ๐Ÿ‡ฒ๐Ÿ‡พ Malaysia -[2025-06-27 18:01:15] DEBUG: Successfully imported: MY: Astro Sports UHD [4K] โ†’ ๐Ÿ‡ฒ๐Ÿ‡พ Malaysia -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'PL | Golf Channel' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ต๐Ÿ‡ฑ Poland for: PL | Golf Channel (matched prefix: 'pl |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'PL | Golf Channel' โ†’ ๐Ÿ‡ต๐Ÿ‡ฑ Poland -[2025-06-27 18:01:15] DEBUG: Successfully imported: PL | Golf Channel โ†’ ๐Ÿ‡ต๐Ÿ‡ฑ Poland -[2025-06-27 18:01:15] DEBUG: Successfully imported: PL | HBO HD โ†’ Movies -[2025-06-27 18:01:15] DEBUG: Successfully imported: PL | HBO2 HD โ†’ Movies -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'TR | TV 8.5' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡น๐Ÿ‡ท Turkey for: TR | TV 8.5 (matched prefix: 'tr |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'TR | TV 8.5' โ†’ ๐Ÿ‡น๐Ÿ‡ท Turkey -[2025-06-27 18:01:15] DEBUG: Successfully imported: TR | TV 8.5 โ†’ ๐Ÿ‡น๐Ÿ‡ท Turkey -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Preshyi' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Preshyi (matched prefix: 'ua |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UA | Preshyi' โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: UA | Preshyi โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Suspline Kultura' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Suspline Kultura (matched prefix: 'ua |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UA | Suspline Kultura' โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: UA | Suspline Kultura โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | PlusPlus' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | PlusPlus (matched prefix: 'ua |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UA | PlusPlus' โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: UA | PlusPlus โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Detinets' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Detinets (matched prefix: 'ua |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UA | Detinets' โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: UA | Detinets โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | One Planet' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | One Planet (matched prefix: 'ua |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UA | One Planet' โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: UA | One Planet โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Rozpakuy TV' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Rozpakuy TV (matched prefix: 'ua |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UA | Rozpakuy TV' โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: UA | Rozpakuy TV โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | FreeDom' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | FreeDom (matched prefix: 'ua |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UA | FreeDom' โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: UA | FreeDom โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Dorama' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Dorama (matched prefix: 'ua |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UA | Dorama' โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: UA | Dorama โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | KinoKazka' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | KinoKazka (matched prefix: 'ua |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UA | KinoKazka' โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: UA | KinoKazka โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Continent-E' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Continent-E (matched prefix: 'ua |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UA | Continent-E' โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: UA | Continent-E โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'UA | Yedyni novyny' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine for: UA | Yedyni novyny (matched prefix: 'ua |') -[2025-06-27 18:01:15] INFO: Auto-detected: 'UA | Yedyni novyny' โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: UA | Yedyni novyny โ†’ ๐Ÿ‡บ๐Ÿ‡ฆ Ukraine -[2025-06-27 18:01:15] DEBUG: Successfully imported: BBC One โ†’ News -[2025-06-27 18:01:15] DEBUG: Successfully imported: BBC Two โ†’ News -[2025-06-27 18:01:15] DEBUG: Detecting country for: 'ITV 1' -[2025-06-27 18:01:15] INFO: Detected ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom for: ITV 1 (matched: 'itv') -[2025-06-27 18:01:15] INFO: Auto-detected: 'ITV 1' โ†’ ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom -[2025-06-27 18:01:15] DEBUG: Successfully imported: ITV 1 โ†’ ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom -[2025-06-27 18:01:15] INFO: Pre-duplicate removal: 26 channels -[2025-06-27 18:01:15] INFO: Writing 6 new channels to file... -[2025-06-27 18:01:15] INFO: Successfully wrote 6 channels -[2025-06-27 18:01:15] INFO: === ROBUST IMPORT STATISTICS === -[2025-06-27 18:01:15] INFO: Total Lines: 53 -[2025-06-27 18:01:15] INFO: Extinf Lines: 26 -[2025-06-27 18:01:15] INFO: Parsed: 26 -[2025-06-27 18:01:15] INFO: Valid: 26 -[2025-06-27 18:01:15] INFO: Filtered Adult: 0 -[2025-06-27 18:01:15] INFO: Filtered Invalid: 0 -[2025-06-27 18:01:15] INFO: Duplicates: 0 -[2025-06-27 18:01:15] INFO: Already Existed: 20 -[2025-06-27 18:01:15] INFO: Final Imported: 6 -[2025-06-27 18:01:15] INFO: Malformed Fixed: 0 -[2025-06-27 18:01:15] INFO: === END STATISTICS === -[2025-06-27 18:01:15] INFO: Cleaned up bulk_import.m3u -[2025-06-27 18:01:15] INFO: Import returned 6 channels -[2025-06-27 18:01:15] INFO: Parsed 29 channels -[2025-06-27 18:01:15] INFO: Generated playlist.m3u with 29 channels -[2025-06-27 18:01:15] INFO: Channels by country: {'๐Ÿ‡บ๐Ÿ‡ฆ Ukraine': 11, '๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom': 6, '๐Ÿ‡บ๐Ÿ‡ธ United States': 4, '๐Ÿ‡ต๐Ÿ‡ฑ Poland': 3, '๐Ÿ‡ฒ๐Ÿ‡พ Malaysia': 2, 'Movies': 1, 'Sports': 1, '๐Ÿ‡น๐Ÿ‡ท Turkey': 1} -[2025-06-27 18:01:15] INFO: Comprehensive playlist generation complete +[2025-06-27 21:44:30] INFO: No import file found, skipping import +[2025-06-27 21:44:30] INFO: Import returned 0 channels +[2025-06-27 21:44:30] INFO: No channels.txt file found +[2025-06-27 21:44:30] INFO: Generated playlist.m3u with 0 channels +[2025-06-27 21:44:30] INFO: Top countries: {} +[2025-06-27 21:44:30] INFO: Report saved: reports/playlist_report_20250627_214430.md +[2025-06-27 21:44:30] INFO: Playlist generation complete: 0 channels across 0 countries +[2025-06-27 21:44:30] INFO: Top countries: {} diff --git a/scripts/__pycache__/channel_processor.cpython-311.pyc b/scripts/__pycache__/channel_processor.cpython-311.pyc new file mode 100644 index 0000000..dd69ca5 Binary files /dev/null and b/scripts/__pycache__/channel_processor.cpython-311.pyc differ diff --git a/scripts/__pycache__/config_manager.cpython-311.pyc b/scripts/__pycache__/config_manager.cpython-311.pyc new file mode 100644 index 0000000..241d9c5 Binary files /dev/null and b/scripts/__pycache__/config_manager.cpython-311.pyc differ diff --git a/scripts/__pycache__/file_manager.cpython-311.pyc b/scripts/__pycache__/file_manager.cpython-311.pyc new file mode 100644 index 0000000..5456aab Binary files /dev/null and b/scripts/__pycache__/file_manager.cpython-311.pyc differ diff --git a/scripts/__pycache__/health_checker.cpython-311.pyc b/scripts/__pycache__/health_checker.cpython-311.pyc new file mode 100644 index 0000000..3211e6e Binary files /dev/null and b/scripts/__pycache__/health_checker.cpython-311.pyc differ diff --git a/scripts/__pycache__/playlist_builder.cpython-311.pyc b/scripts/__pycache__/playlist_builder.cpython-311.pyc new file mode 100644 index 0000000..100f5df Binary files /dev/null and b/scripts/__pycache__/playlist_builder.cpython-311.pyc differ diff --git a/scripts/__pycache__/report_generator.cpython-311.pyc b/scripts/__pycache__/report_generator.cpython-311.pyc new file mode 100644 index 0000000..b01d617 Binary files /dev/null and b/scripts/__pycache__/report_generator.cpython-311.pyc differ diff --git a/scripts/config/group_overrides.json b/scripts/config/group_overrides.json new file mode 100644 index 0000000..1e3851b --- /dev/null +++ b/scripts/config/group_overrides.json @@ -0,0 +1,4 @@ +{ + "example_keyword": "๐Ÿ‡บ๐Ÿ‡ธ United States", + "another_keyword": "๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom" +} \ No newline at end of file diff --git a/scripts/config/patterns.json b/scripts/config/patterns.json new file mode 100644 index 0000000..7ea4c79 --- /dev/null +++ b/scripts/config/patterns.json @@ -0,0 +1,600 @@ +{ + "country_patterns": { + "๐Ÿ‡บ๐Ÿ‡ธ United States": [ + "cbs", + "nbc", + "abc", + "fox", + "espn", + "cnn", + "hbo", + " usa", + " us ", + ".us", + "america", + "nfl" + ], + "๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom": [ + "bbc", + "itv", + "sky", + "channel 4", + "e4", + " uk", + ".uk", + "british", + "premier league" + ], + "๐Ÿ‡จ๐Ÿ‡ฆ Canada": [ + "cbc", + "ctv", + "global", + "canada", + "canadian", + " ca ", + ".ca" + ], + "๐Ÿ‡ฉ๐Ÿ‡ช Germany": [ + "ard", + "zdf", + "rtl", + "sat.1", + "pro7", + "germany", + "german", + " de ", + ".de" + ], + "๐Ÿ‡ซ๐Ÿ‡ท France": [ + "tf1", + "france 2", + "m6", + "canal+", + "france", + "french", + " fr ", + ".fr" + ], + "๐Ÿ‡ช๐Ÿ‡ธ Spain": [ + "tve", + "antena 3", + "telecinco", + "spain", + "spanish", + " es ", + ".es" + ], + "๐Ÿ‡ฎ๐Ÿ‡น Italy": [ + "rai", + "mediaset", + "canale 5", + "italy", + "italian", + " it ", + ".it" + ], + "๐Ÿ‡ณ๐Ÿ‡ฑ Netherlands": [ + "npo", + "rtl nl", + "netherlands", + "dutch", + "holland", + " nl ", + ".nl" + ], + "๐Ÿ‡ง๐Ÿ‡ช Belgium": [ + "vtm", + "รฉรฉn", + "canvas", + "belgium", + "belgian", + " be ", + ".be" + ], + "๐Ÿ‡จ๐Ÿ‡ญ Switzerland": [ + "srf", + "rts", + "switzerland", + "swiss", + " ch ", + ".ch" + ], + "๐Ÿ‡ฆ๐Ÿ‡น Austria": [ + "orf", + "austria", + "austrian", + " at ", + ".at" + ], + "๐Ÿ‡ต๐Ÿ‡น Portugal": [ + "rtp", + "sic", + "tvi", + "portugal", + "portuguese", + " pt ", + ".pt" + ], + "๐Ÿ‡ฎ๐Ÿ‡ช Ireland": [ + "rte", + "tg4", + "ireland", + "irish", + " ie ", + ".ie" + ], + "๐Ÿ‡ธ๐Ÿ‡ช Sweden": [ + "svt", + "tv4", + "sweden", + "swedish", + " se ", + ".se" + ], + "๐Ÿ‡ณ๐Ÿ‡ด Norway": [ + "nrk", + "tv 2 no", + "norway", + "norwegian", + " no ", + ".no" + ], + "๐Ÿ‡ฉ๐Ÿ‡ฐ Denmark": [ + "dr", + "tv2 dk", + "denmark", + "danish", + " dk ", + ".dk" + ], + "๐Ÿ‡ซ๐Ÿ‡ฎ Finland": [ + "yle", + "mtv3", + "finland", + "finnish", + " fi ", + ".fi" + ], + "๐Ÿ‡ฎ๐Ÿ‡ธ Iceland": [ + "ruv", + "iceland", + "icelandic", + " is ", + ".is" + ], + "๐Ÿ‡ท๐Ÿ‡บ Russia": [ + "channel one", + "rossiya", + "ntv", + "russia", + "russian", + " ru ", + ".ru" + ], + "๐Ÿ‡ต๐Ÿ‡ฑ Poland": [ + "tvp", + "polsat", + "tvn", + "poland", + "polish", + " pl ", + ".pl" + ], + "๐Ÿ‡จ๐Ÿ‡ฟ Czech Republic": [ + "ct", + "nova", + "prima", + "czech", + " cz ", + ".cz" + ], + "๐Ÿ‡ธ๐Ÿ‡ฐ Slovakia": [ + "rtvs", + "markiza", + "slovakia", + "slovak", + " sk ", + ".sk" + ], + "๐Ÿ‡ญ๐Ÿ‡บ Hungary": [ + "mtv hu", + "rtl klub", + "hungary", + "hungarian", + " hu ", + ".hu" + ], + "๐Ÿ‡บ๐Ÿ‡ฆ Ukraine": [ + "1+1", + "inter", + "ictv", + "ukraine", + "ukrainian", + " ua ", + ".ua" + ], + "๐Ÿ‡ท๐Ÿ‡ด Romania": [ + "tvr", + "pro tv", + "romania", + "romanian", + " ro ", + ".ro" + ], + "๐Ÿ‡ง๐Ÿ‡ฌ Bulgaria": [ + "btv", + "nova bg", + "bulgaria", + "bulgarian", + " bg ", + ".bg" + ], + "๐Ÿ‡ญ๐Ÿ‡ท Croatia": [ + "hrt", + "nova tv hr", + "croatia", + "croatian", + " hr ", + ".hr" + ], + "๐Ÿ‡ท๐Ÿ‡ธ Serbia": [ + "rts", + "pink", + "serbia", + "serbian", + " rs ", + ".rs" + ], + "๐Ÿ‡ฌ๐Ÿ‡ท Greece": [ + "ert", + "mega gr", + "greece", + "greek", + " gr ", + ".gr" + ], + "๐Ÿ‡ง๐Ÿ‡ท Brazil": [ + "globo", + "band", + "sbt", + "brazil", + "brasil", + " br ", + ".br" + ], + "๐Ÿ‡ฆ๐Ÿ‡ท Argentina": [ + "telefe", + "canal 13", + "argentina", + " ar ", + ".ar" + ], + "๐Ÿ‡ฒ๐Ÿ‡ฝ Mexico": [ + "televisa", + "tv azteca", + "mexico", + "mรฉxico", + " mx ", + ".mx" + ], + "๐Ÿ‡จ๐Ÿ‡ฑ Chile": [ + "tvn", + "mega", + "chile", + "chilean", + " cl ", + ".cl" + ], + "๐Ÿ‡จ๐Ÿ‡ด Colombia": [ + "caracol", + "rcn", + "colombia", + "colombian", + " co ", + ".co" + ], + "๐Ÿ‡ต๐Ÿ‡ช Peru": [ + "america tv pe", + "peru", + "peruvian", + " pe ", + ".pe" + ], + "๐Ÿ‡ป๐Ÿ‡ช Venezuela": [ + "venevision", + "venezuela", + "venezuelan", + " ve ", + ".ve" + ], + "๐Ÿ‡จ๐Ÿ‡ณ China": [ + "cctv", + "phoenix", + "china", + "chinese", + " cn ", + ".cn" + ], + "๐Ÿ‡ฏ๐Ÿ‡ต Japan": [ + "nhk", + "fuji", + "tv asahi", + "japan", + "japanese", + " jp ", + ".jp" + ], + "๐Ÿ‡ฐ๐Ÿ‡ท South Korea": [ + "kbs", + "sbs kr", + "mbc kr", + "korea", + "korean", + " kr ", + ".kr" + ], + "๐Ÿ‡ฐ๐Ÿ‡ต North Korea": [ + "kctv", + "north korea", + "dprk" + ], + "๐Ÿ‡น๐Ÿ‡ผ Taiwan": [ + "cts", + "ctv", + "tvbs", + "taiwan", + "taiwanese", + " tw ", + ".tw" + ], + "๐Ÿ‡ญ๐Ÿ‡ฐ Hong Kong": [ + "tvb", + "atv", + "hong kong", + "hongkong", + " hk ", + ".hk" + ], + "๐Ÿ‡น๐Ÿ‡ญ Thailand": [ + "ch3", + "ch7", + "thai pbs", + "thailand", + "thai", + " th ", + ".th" + ], + "๐Ÿ‡ป๐Ÿ‡ณ Vietnam": [ + "vtv", + "htv", + "vietnam", + "vietnamese", + " vn ", + ".vn" + ], + "๐Ÿ‡ฎ๐Ÿ‡ฉ Indonesia": [ + "tvri", + "sctv", + "rcti", + "indonesia", + "indonesian", + " id ", + ".id" + ], + "๐Ÿ‡ฒ๐Ÿ‡พ Malaysia": [ + "tv1", + "tv3", + "astro", + "malaysia", + "malaysian", + " my ", + ".my", + "my:" + ], + "๐Ÿ‡ธ๐Ÿ‡ฌ Singapore": [ + "channel 5", + "channel 8", + "singapore", + " sg ", + ".sg" + ], + "๐Ÿ‡ต๐Ÿ‡ญ Philippines": [ + "abs-cbn", + "gma", + "philippines", + "filipino", + " ph ", + ".ph" + ], + "๐Ÿ‡ฎ๐Ÿ‡ณ India": [ + "star plus", + "zee tv", + "colors", + "sony tv", + "india", + "indian", + "hindi", + " in ", + ".in" + ], + "๐Ÿ‡ต๐Ÿ‡ฐ Pakistan": [ + "ptv", + "geo tv", + "ary", + "pakistan", + "pakistani", + " pk ", + ".pk" + ], + "๐Ÿ‡ง๐Ÿ‡ฉ Bangladesh": [ + "btv", + "channel i", + "bangladesh", + "bangladeshi", + " bd ", + ".bd" + ], + "๐Ÿ‡ฑ๐Ÿ‡ฐ Sri Lanka": [ + "rupavahini", + "sirasa", + "sri lanka", + " lk ", + ".lk" + ], + "๐Ÿ‡ณ๐Ÿ‡ต Nepal": [ + "nepal tv", + "kantipur", + "nepal", + "nepali", + " np ", + ".np" + ], + "๐Ÿ‡ฆ๐Ÿ‡ซ Afghanistan": [ + "rta", + "tolo tv", + "afghanistan", + "afghan", + " af ", + ".af" + ], + "๐Ÿ‡ฆ๐Ÿ‡บ Australia": [ + "abc au", + "seven", + "nine", + "ten", + "australia", + "australian", + "aussie", + " au ", + ".au" + ], + "๐Ÿ‡ณ๐Ÿ‡ฟ New Zealand": [ + "tvnz", + "tvnz 1", + "tvnz 2", + "three nz", + "tvnz duke", + "new zealand", + "kiwi", + " nz ", + ".nz" + ], + "๐Ÿ‡ธ๐Ÿ‡ฆ Arabic": [ + "al jazeera", + "mbc", + "lbc", + "dubai tv", + "arabic", + "arab", + "qatar", + "dubai", + "saudi" + ], + "๐Ÿ‡ฎ๐Ÿ‡ฑ Israel": [ + "kan", + "keshet 12", + "israel", + "israeli", + "hebrew", + " il ", + ".il" + ], + "๐Ÿ‡น๐Ÿ‡ท Turkey": [ + "trt", + "atv", + "kanal d", + "turkey", + "turkish", + " tr ", + ".tr", + "tr |" + ], + "๐Ÿ‡ฎ๐Ÿ‡ท Iran": [ + "irib", + "press tv", + "iran", + "iranian", + "persian", + " ir ", + ".ir" + ], + "๐Ÿ‡ช๐Ÿ‡ฌ Egypt": [ + "nile tv", + "cbc egypt", + "egypt", + "egyptian", + " eg ", + ".eg" + ], + "๐Ÿ‡ฟ๐Ÿ‡ฆ South Africa": [ + "sabc", + "etv", + "mnet", + "south africa", + " za ", + ".za" + ], + "๐Ÿ‡ณ๐Ÿ‡ฌ Nigeria": [ + "nta", + "channels tv", + "nigeria", + "nigerian", + " ng ", + ".ng" + ] + }, + "country_prefixes": { + "๐Ÿ‡บ๐Ÿ‡ฆ Ukraine": [ + "ua |" + ], + "๐Ÿ‡ต๐Ÿ‡ฑ Poland": [ + "pl |" + ], + "๐Ÿ‡น๐Ÿ‡ท Turkey": [ + "tr |" + ], + "๐Ÿ‡ฒ๐Ÿ‡พ Malaysia": [ + "my:", + "my |" + ], + "๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom": [ + "uk:", + "uk |" + ], + "๐Ÿ‡บ๐Ÿ‡ธ United States": [ + "us:", + "us |" + ] + }, + "quality_patterns": { + "4K": [ + "4k", + "uhd", + "2160p" + ], + "FHD": [ + "fhd", + "1080p", + "1080" + ], + "HD": [ + "hd", + "720p", + "720" + ], + "SD": [ + "sd", + "480p", + "360p" + ] + }, + "adult_keywords": [ + "xxx", + "adult", + "porn", + "sex", + "erotic", + "playboy", + "18+" + ] +} \ No newline at end of file diff --git a/scripts/config/settings.json b/scripts/config/settings.json new file mode 100644 index 0000000..fdfbb87 --- /dev/null +++ b/scripts/config/settings.json @@ -0,0 +1,16 @@ +{ + "remove_duplicates": true, + "sort_channels": true, + "backup_before_import": true, + "auto_cleanup_import": true, + "auto_detect_country": true, + "detect_quality": true, + "skip_adult_content": true, + "min_channel_name_length": 2, + "max_workers": 4, + "enable_health_check": false, + "health_check_timeout": 5, + "create_backup": true, + "max_backups": 5, + "log_level": "INFO" +} \ No newline at end of file diff --git a/scripts/reports/playlist_report_20250627_214430.md b/scripts/reports/playlist_report_20250627_214430.md new file mode 100644 index 0000000..63eb576 --- /dev/null +++ b/scripts/reports/playlist_report_20250627_214430.md @@ -0,0 +1,16 @@ +# IPTV Playlist Generation Report +**Generated:** 2025-06-27 21:44:30 + +## Summary Statistics +- **Total channels processed:** 0 +- **Valid channels:** 0 +- **Duplicates removed:** 0 +- **New channels imported:** 0 +- **Countries detected:** 0 + +## Configuration +- **Remove duplicates:** True +- **Auto country detection:** True +- **Quality detection:** True +- **Adult content filtering:** True +- **Health check enabled:** False