!!! ВАЖНО !!!

1) Във връзка с превенцията на зачестилите СПАМ теми във форума, паролите на всички потребители бяха автоматично инвалидизирани на 22 Май 2024 14:20 ч.. За да възстановите своята парола (и създадете нова), моля използвайте опцията за забравена парола тук.
2) Ако акаунта ви е "баннат", без да знаете защо, вероятно от ваше име са публикувани СПАМ съобщения.
Съжаляваме за причиненото неудобство. При проблеми с възстановяването на паролата или баннати акаунти, моля пишете на kodibg в гмаил.ком или във Фейсбук страницата на КодиБГ Форум тук

Оценете темата:
  • 0 гласа - средно 0
  • 1
  • 2
  • 3
  • 4
  • 5
EPG за Първа програма,БНТ [Отделена тема]
#13
Написах един скрипт който извлича програма за даден канал на телевизия от "dnes точка bg "
Код:
#!/usr/bin/python3

import bs4
import re
import sys
from datetime import date
from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as soup
nom = sys.argv[1]
my_url=f'https://www.dnes.bg/tv.php?tv={nom}'


uClient = uReq(my_url)
page_soup = soup(uClient.read(), "html.parser")
uClient.close()

containers = page_soup.find("div" ,{"class":"pad bProgram"})
con = containers.findAll("div" ,{"class":"b5 tv_line clearfix"})

data = str(con).replace('</div>' , ' ').replace(',' , ' ').replace('<span class="now">' , ' ').replace('<div class="now">' , ' ')
match = re.compile('"info">(.+?)<.+?"ttl">(.+?)<.+?', re.S).findall(data)
for info, ttl in match:
       
       desc = info.strip() + ' - ' + ttl.strip()
       print (desc)
 Когато се извиква скрипта се очаква да се добави като аргумент число .При мен работи с допълнителен bash скрипт.
Код:
#!/bin/bash
echo "
btv = 13
btvc = 4725
nova = 42
knova = 20
hbo = 14
hbo2 = 11212
hbo3 = 11213
discovery = 56
bnt1 =11199
bnt2 = 11087
bnt3 = 11234
bnt4 = 11235
dav = 11120
tv1000 = 8429
ort = 11133
movst = 11178
ntv = 11244
nickt = 11256"


let ch=0

#as long as phonex is 0 keep looping
while [ $ch -eq 0 ];
do
    #get channel
        echo "Избери канал"
        read ch

    #make sure the input contains digits
        if [[ $ch =~ [0-9] ]];
        then
        #if it does contain digits
        #change ch value to stop loop
                python3 ~/bin/tvpr $ch # това е пътя и името на горният скрипт
                let ch=1

        else

                clear
                echo "invalid number"
                sleep 1
        fi
done
Може да се направи и с един файл само на питон, но понеже познанията ми за питон клонят към нула го направих както мога Rolleyes
Отговори


Съобщения в темата
RE: EPG за Първа програма,БНТ и други [Отделена тема] - от zypy - 28-05-2022, 21:05
RE: Free BG TVs - от zypy - 27-02-2021, 12:49
RE: Free BG TVs - от zypy - 01-03-2021, 01:36
RE: Free BG TVs - от martinstz - 03-03-2021, 21:03
RE: Free BG TVs - от zypy - 04-03-2021, 21:04
RE: Free BG TVs - от martinstz - 05-03-2021, 00:48
RE: Free BG TVs - от zypy - 10-03-2021, 21:35
RE: Free BG TVs - от martinstz - 11-03-2021, 01:24
RE: Free BG TVs - от zypy - 11-03-2021, 10:33
RE: Free BG TVs - от martinstz - 11-03-2021, 13:02
RE: Free BG TVs - от zypy - 11-03-2021, 13:23
RE: Free BG TVs - от martinstz - 11-03-2021, 19:55

Отваряне на: