Перейти к содержимому

Фотография

Интересный PythonКонсультации, Вопросы, Интересные Задачки на Python

python вопросы задачки консультации программирование

  • Авторизуйтесь для ответа в теме
Сообщений в теме: 73

#61
lexx821

lexx821
  • Свой человек
  • 812 сообщений

( сделать регистрацию платной)

 

Это тоже очень сложная задача, там нужна наверное готовая какая-та платёжная система, и чтобы был HTTPS протокол и сертификат. Помню вот в этой книжке А.Крупник "Бизнес в интернет",  которую мне подарили, описывали как сделать свою платёжную систему. Помойму её в Академкниги покупали, вот только не знаю есть ли ещё такая книга, или автор больше не выпускает книги.

 

IMG_0823-min.JPG

 

IMG_0822-min.JPG


  • 0

#62
Almaty Pro

Almaty Pro
  • Частый гость
  • 87 сообщений

Это тоже очень сложная задача, там нужна наверное готовая какая-та платёжная система

Всё намного проще !!!

Мы используем две готовый платежные системы https://robokassa.com и  https://paybox.money/kz_ru 


  • 0

#63
lexx821

lexx821
  • Свой человек
  • 812 сообщений

Вообще всё равно на чём программировать свой ютуб, но проще скорей всего будет открыть свой телевизионный канал, чем сделать свой ютуб и раскрутить, и деньги на канале  проще зарабатывать, а в своём ютубе, нужно разработать балансировщик нагрузки. Допустим есть видео на вашем сервере aws, ну допустим скорость сервера 100 мбит/с, на ютубе только что я посмотрел если смотреть в разрешение 480p то грузится со скоростью у меня 17мбит/сек, ну вот а теперь поделим 100 мбит на 17 мбит, то скорей всего 1 сервер выдержит где-то 5 зрителей. Нужен балансировщик нагрузки, если один сервер полностью нагружен, то балансировщик должен найти сервер который свободный, иначе пользователи Вашего ютуба увидят ошибку 503. У телевизора нет таких проблем, одна ваша антенна хватит всем Алматинцам выши крыши, единственно будут помехи, если что-то загараживает антену, а так у вас будет больше абонентов чем на ютубе. Ну или можете сделать видеоклуб, и за вход брать денюжки, а там компьютеры, и пусть смотрят видео. Вот в Акколе я видел игровой клуб, там дети играют в ps4. У нас есть другие видеоклубы, только там клуб для взрослых дяденек. Вот смотрю ютуб давно, в современном ютубе там много фейков и постановок. Владельцы каналов на ютубе, зарабатывают на лжи, просто они делают очень сильно похоже на правду видео, а потом выясняется что это была постановка. Если бы у Вас была бы уникальная идея, лучше чем у ютуба, может у Вас бы ваш проект фартанул. Многие кто делали ютуб, они банкротились. Допустим немецкий ютуб MyVideo почему-то фирма зарегестрирована была не в Германии, а в Румынии, очень странно это... и то этот ютуб принадлежал телевизионной компании ProSiebenSat.1 Media SE, если всё супер так, то что они не в Германии - https://translate.go...rg/wiki/MyVideo а в Румынии? Лет 10 назад смотрел я ролики на Smotri, раньше много было там роликов, а сейчас портал превратился в видеочат для взрослых. Рутуб принадлежит одной очень крупной российской компании, которая вообще не занимается на сколько я понимаю IT. Даже вот если взять например видеохостинг на популярных российских соц.сетях, это всё добро принадлежит миллиардеру Усманову. Так что туда идут очень серьёзные или богатые дяди. Ну да, свой ютуб в принципе можно сделать, и то только ради тренировки в программирование и получения удовольсвтия, а не для заработка денег, просто чем больше программируешь, тем больше набирается опыт в разработки ПО. 

 

Ну и напоследок P.S. (для всех начальников, ищущих работу и хейтеров):

Скрытый текст


  • 0

#64
lexx821

lexx821
  • Свой человек
  • 812 сообщений
в разрешение 480p то грузится со скоростью у меня 17мбит/сек

Сорри это ошибка была, 17мбит/сек это была скорость соединения с сервером ютуб, по моим новым подсчётам, один сервер при качестве 480p может выдержать одновременно где-то 100-200 зрителей. Просто у гугла очень много серверов, поэтому ютуб не тормозит, у них столько серверов, что часть серверов они сдают в аренду так-же как azure, aws (т.е. облачные сервисы). Если что, вот дата центр гугл изнутри на 2:53, там показывают дата центр - https://www.youtube....h?v=XZmGGAbHqa0, я не знаю сколько там серверов, ну так на глаз предположем в одном шкафу где-то 90 серверов, и допустим в сумме 200 шкафов, то в сумме у них 18 тыщ серверов, если 1 сервер вмещает ну допусти 4тбайт, то все сервера в сумме это 72 тыщ тбайт, допустим 1 час видеоролика в качестве 720p по моим расчётам весит 480мбайт, то поместится на все сервера гугла наверное примерно где-то несколько сотен миллионов видеороликов в 720p в 1 час, и раз один сервер при 100 мбит/сек может обслужить где-то 100-200 зрителей/сервер, то весь ютуб может обслужить где-то в сумме от 1.8 миллионов до 3.6 миллионав зрителей, но то видео старое (2010-2014 год), уверен что у гугла сейчас намного больше серверов, допустим в 2-3 раза больше чем в том видео. Уверен что у гугл есть ещё CDN сервера, где-нибудь в Европе, и в Азии. А поскольку у ЕС требования какие-то там по защите персональных данных, многие крупные IT-компании, которые предоставляют облачные сервисы, или хранят информацию о жителей стран ЕС в облачных сервисах, должны иметь офисы и дата центры на территории ЕС. Иначе их могут оштрафавать.

И ещё по моему мнению, хоть я не знаю как устроне гугл, и я не силён в сетевых делах и в администрирование, но  уверен что каждый сервер, имеет как подключение к интернету, так и соеденён с другими серверами, поэтому если какое-то видео хранится на одном сервере, а линия будет полностью забита, то можно обратится к файлу через другй сервер (допустим у каждого сервера несколько сетевых карт), допустим у каждого сервера имеется сетевая папка. Кстате ютуб помимо проигрывания,  загрузки, и конвертации видео,  распознаёт композитора, если в видео играет музыка или фоновая музыка распознаёт автор песен, а так-же ютуб распознаёт слова, и создаёт транскрипцию а так-же может на лету переводить транскрипцию на другие языки. Иногда получается корявая транскрипция, но в будущем уверен что они сделают хороший алгоритм распознавания речи, и спомощью искусственного интеллекта по транскрициям будут фильтровать видеоролики, и если видео противоречит соглашение ютуба, ютуб будет эти видео автоматически удалять. 

 

P.S. Я без понятия как ютуб на лету меняет качество видео, когда зритель выберает качество внизу видеоплеера, предпологаю когда на сервер загрузится видео с самым высоким разрешением допустим 1080p, при проигрывание видеоролика используется какая-нибудь утилита типа ffmpeg, которая умеет на лету конвертировать в качество видео выбраное из списка в видео, а может быть после того как ютубер загрузит своё видео на ютуб, ютуб конвертирует видео в разные качества (240p, 320p, 480p, 720p, 1080p, 4k, ...). При загрузки другого формата (avi, mov, mpg, mp2, xvid, divx) на ютуб, возможно конвертируется спомощью типа утилитой ffmpeg в mp4, по опыту могу сказать, когда конвертируешь спомощью ffmpeg из mp4 ещё раз в mp4 то качество очень сильно резко искажается. 

И всё таки везёт же тем, у тех у кого свой телевизённый канал есть, у них сразу автоматически миллионы абонентов без всяких серверов, нужно только определённую частоту настроить, на которой транслируется ваш канал.


Сообщение отредактировал lexx821: 10.06.2020, 20:58:09

  • 0

#65
lexx821

lexx821
  • Свой человек
  • 812 сообщений

Так-же если создавать свой ютуб, (ну пусть допустим на Python), то хотелось бы чтобы видеоролик содержал семантический разбор, какие-то аннотации. Я уже с начало 2000х жду формат MPEG-7, который лет 15-20 назад наделал много шуму, и по моему мнению был очень инновативным. Суть формата в том, как я понимаю чтобы по аннотациям можно было искать сцены/объекты/события. И от этого формата остались рожки да ножки. MPEG-7 должен был произвести фурор в телевидение, можете тут почитать про этот формат - http://book.itep.ru/2/25/mpeg_7.htm. Лично я сам раньше пытался сделать аннотации. Можете глянуть вот эту презентацию XML, XML Databases and MPEG-7 - https://www.slidesha...bases-and-mpeg7. Мне лично непонятно почему формат MPEG-7 не популярен. Допустим пример: в видео есть сцена, где человек идёт по дороге до остановки, а потом ждёт автобус на остановки, и допустим садится в автобус и едет в автобусе. Допустим в этом видео три сцены улица, остановка и внутри автобуса, четыре объекта - человек, дорога, остановка и автобус, и три события . Потом идёт подробное описание каждых сцен и объектов, а так-же 4 события идёт, ждёт на остановке, садится в автобус, играет музыка через web-midi, если midi-синтезатор подключен к компьютеру. Допустим так, я попытался только-что создать xml-файл описание сцен, объектов, субьектов на видео:

<?xml version="1.0" encoding="utf-8" ?>
<video>
<head>
  <title>Demo</title>
  <description>Видео, Михаил едет в автобусе</description>
  <duration>00:15:00</duration>
  <author>Lexx821</author>
  <thumbnail src="thumb5000.jpg" />
</head>
<!-- описание сцен в видео -->
<scenes>
   <scene id="sc_street" begin="00:01:00" end="00:03:00">
     <description>улица</description>
   </scene>
   <scene id="sc_busstop" begin="00:03:01" end="00:05:00">
     <description>остановка</description>
   </scene>
   <scene id="sc_bus" begin="00:05:01" end="00:15:00">
     <description>в автобусе</description>
   </scene>
</scenes>
<!-- описание объектов -->
<objects>
  <object id="obj_person1" name="Михаил" type="person" gender="men" color="brown" older="60" x1="" y1="" x2="" y2="">
    <descript>
      Человека зовут Михаил, ему 60 лет.
    </descript>
  </object>
  <object id="obj_street1" type="street" color="black" x1="" y1="" x2="" y2="" />
  <object id="obj_busstop1" type="construction" color="blue" x1="" y1="" x2="" y2="" />
  <object id="obj_bus1" type="vehicle" color="blue" construction-year="2005" x1="" y1="" x2="" y2="">
    <descript>
      Blue bus
    <descript>
</objects>
<!-- События -->
<events>
  <event id="walk1" type="move" object-id="obj_person1" on-moveto-id="obj_busstop1" sceneid="sc_street" begin="00:01:00" end="00:03:00" />
  <event id="wait1" type="wait" object-id="obj_person1" on-waitin-id="obj_busstop1" sceneid="sc_busstop" begin="00:03:01" end="00:05:00" />
   <!-- webmidi - это библиотека, в данной ситуации чтобы зритель мог подключить миди-клавиатуру, или midi-плеер, чтобы видеть как нажимаются клавиши на midi клаивиатуре-->
  <event id="playpiano1" type="device" device-id="webmidi" on-ready-call-js="playmidi('demo.midi');" begin="00:04:50" end="00:15:00" />
  <event id="ride1" type="ride" object-id="obj_person1" on-ride-id="obj_busstop1" sceneid="sc_bus" begin="00:05:01" end="00:15:00">
</events>
<!-- текстовки -->
<texts>
  <translate lang="ru">
  <text id="text1" on-begin="00:01:00" object-id="obj_street1">Михаил идёт по улице на остановку</text>
  <text id="text1" on-begin="00:03:00" object-id="obj_busstop1">Михаил подходит к остановки, и ждёт автобус</text>
  <text id="text1" on-begin="00:05:01" object-id="obj_bus1">Михаил едет в автобусе</text>
  </translate>
</texts>
</video>

P.S.:

Скрытый текст

 

Ну вот тогда Ваш проект возможно фортанёт!


Сообщение отредактировал lexx821: 10.06.2020, 22:39:00

  • 0

#66
trnj

trnj
  • Свой человек
  • 609 сообщений

 Ну вот тогда Ваш проект возможно фортанёт!

 

 

Лекс, специально для тебя Задание. В идеале на питоне, но без разницы в общем.

 

Нужно написать whois чекер для доменом. Whois данные не интересуют, интересует только зареган ли домен. 

 

 

Есть библиотеки типа  https://github.com/r...dpenman/pywhois

Но она не полная 

 

В идеале, форкнуть библиотеку выше, и дополнить её.

К примеру, вот тут чел что-то делает 

 

https://github.com/k...whoiser/servers

 

И тут

https://github.com/b...master/whois.py

 

Посмотреть бы как whois сервера разных стран отвечают, что там за стандарт, и как можно универсально парсить и проверять зареганы ли домены.


Сообщение отредактировал trnj: 11.06.2020, 12:02:27

  • 0

#67
lexx821

lexx821
  • Свой человек
  • 812 сообщений

Круто. Но я бы наверное сделал бы так (это если веб сервер на Linux) как тут написано https://stackoverflo...of-domain-names просто вызывал бы как там написано линуксовскую программу whois - https://ru.wikipedia.org/wiki/WHOIS прям из Python. Есть пару минусов, если долго не будет ответа от whois, это значит что браузер клиента будет висеть, если он не дождётся ответа, то у пользоватееля вылезит ошибка, что ресурс не доступен из-за таймаута, а так-же может эта программа память пожерает, после 100 одновременных запросов, наверное может быть что сервер упадёт, ну и там (https://stackoverflo...of-domain-names ) человек написал часто нельзя в короткий промежуток времени использовать т.к. могут заблокировать. Под Windows тоже нашёл готовую программу, но там я почитал EULA, вроде как понимаю лицензия не позваляет использовать whois в коммерческих целях, вот эта - https://docs.microso...downloads/whois. А так наверное нужно разбираться подробно в этих делах, и читать в какой-нибудь специфической литературе, которая уверен на 100% не переведена на русский, допустим от издательства o'reilly, у них есть всякие научные книги на специфические задачи (темы). А эти библиотеки которые в github наверное тестировать надо. Кстате я в pypi нашёл whois https://pypi.org/project/whois/.

P.S.: Сейчас глаза болят, т.к. вчера сильно перенапрёгся, и ощущение как-будто все силы ушли.


  • 0

#68
lexx821

lexx821
  • Свой человек
  • 812 сообщений

Кстате ещё тут нашёл https://www.pythonfo.../using-pywhois/

Ну я может быть бы так делал (это лично моё мнение):

  
try:
  #тут вызов whois, возврат текста в str_result

  #str_result - это результат с информацией о домене
  #int_start - это адрес текста который начинается с Registered On, int_end - это адрес который начинается Updated On
  int_start = str_result.find('Registered On')
  int_end = str_result.find('Updated On')

  #Если длина между Registered On и Updated On больше 0, то домен зарегестрирован, иначе не зарегестрирован.
  if len(str_result[int_start:int_end]) > 0:
    print('Домен зарегестрирован')
  else:
    print('Домен не зарегестрирован')
except:
  print('Ошибка, либо домен не зарегестрирован')

Почему именно такой алгоритм, дайте поиск в whois несуществуещего домена, будет строка типа "WHOIS data currently unavailable", значит спомощью str_result.find не найти.


  • 0

#69
trnj

trnj
  • Свой человек
  • 609 сообщений

Кстате ещё тут нашёл https://www.pythonfo.../using-pywhois/

 

 

Да, это лучшее что есть на текущий момент.

 

Сейчас это здесь актуально

https://github.com/r...dpenman/pywhois

 

Но там не всё. На вскидку, нету .jo - домена иордании к примеру. Хотя очень неплохо эту либу доработали (надо на прямую с гита ставить, на pip старая версия).

.kz даже добавили.

 

Плюс там ещё глюк, что если домен истёк но не удалён из базы (то есть нельзя регнуть), то выкидывает ошибку, хотя по идее можно вернуть что недоступен для реги.


  • 0

#70
lexx821

lexx821
  • Свой человек
  • 812 сообщений

Хоть Python и прост в освоение, но... Во-первых, мне советывали ориентироваться только на PHP7, JavaScript, HTML5, CSS3. А про всё остальное просто тупо забыть. Пусть хоть Python и на 3-м месте стоит в tiobe index https://www.tiobe.com/tiobe-index/ это ничего не значит, ниже я напишу почему. PHP был, и всегда останеться популярным, т.к. очень много проектов написаны именно на PHP, у PHP синтакс Си-шный, если глянуть в tiobe index, Си сейчас стоит на первом месте, если умеешь на Си автоматически умеешь и на PHP программировать. 

Во-вторых, хоть Python и на 3-м месте, ещё очень мало хостингов, которые предлагали бы Python, тут я говорю про хостинги, а не про облачные сервисы(!).

В-третьих после просмотра видео про нулевой день WinRAR-а 

 

как-то страшно ставить на обычный комп Python, не хочу получить ратники на свой комп. Прежде чем серьёзно заниматься Python, нужно сначало создать виртуальный комп и установить на виртуалку какой-нибудь легковесный Линукс, желательно без GUI, и уже на виртуалке эксперементировать. 

В-четвёртых я бы запускал бы линуксовую команду whois, я Linux-овской команде больше доверяю, в худшем случае я бы нашёл бы исходники оригинальной whois, которая идёт в комплекте с Linux/Bash и перекомпилировал бы исходники, и превратил бы в нативную библиотеку для Python. В других языках/технологиях типа Java, PHP ведь можно делать нативные библиотеки, и в Python думаю тоже есть такая возможность, когда нужно сделать специфическую нативную библиотеку, которая обращается к системе Windows/Linux/MacOS X/etc, т.е. является неким мостиком (интерфейсом) между операционной системой и интерпретаром Python, тут я не говорю про exe-файлы (в Python вроде можно создать exe), я тут имею ввиду когда Python интерпретирует.

 

P.S.

Скрытый текст

Сообщение отредактировал lexx821: 13.06.2020, 01:06:05

  • 0

#71
lexx821

lexx821
  • Свой человек
  • 812 сообщений

Вообще, может кто-нибудь назвать из вас ну хотя-бы ну 10 причин почему нужно использовать именно Python или Django в фронтенд/бакенд? Только без оскорблений и высокомерия. Просто хотелось бы узнать... Я назову 10 причин почему Python и DJango не подходит для этих целей:

1. Мало провайдеров/хостингов (именно хостингов, под хостинг я не имею ввиду виртуальные сервера, тут хостинг имею ввиду когда дают ftp, допустим 100мбайт озу, 1гбайт диск), в РК их наверное 0!

2. Мало настоящих программистов на Python.

3. Как CGI Python это целая история, много нервов попортишь (под CGI имею ввиду, когда код находится в папке cgi-bin, а веб сервер допустим Apache).

4. Django не нужен, так-как современный веб сайт собирается на клиенте.

5. Маршрутизация это чисто выпендрёшь.

6. ORM это вообще какой-то изврат, я лучше SQL запрос напишу, чем буду представлять таблицы ввиде объектов, самое сложное причём в любом ORM это join. 

7. Там синтакс какой-то плохой, постоянно либо двоеточие, либо отступы, причём отступы должны быть обязательно, и служат вместо фигурных скобок, обфускация и сжатие кода повидимому будет невозможной.

8. А ООП в Python про него я вообще молчу... Вместо this, там self, причём self нужно указывать в каждом методе. И вместо того чтобы как в нормальных языках конструктор является либо метод с названием класса, либо как в PHP __construct, но нет надо именно не как у всех __init__.

9. Из-за маршрутизации проблемы с путями, допустим кто-то создаёт домен третьего уровня и указывает абсолютный путь на css, javascript, итд. Допустим в asp net razor были хелперы @Styles.Render и @Scripts.Render, и это облегчало немного, в Python я молчу...

10. Очень мало веб проектов на Python/Django.

 

Единственно что прикольно в Python это кортежи (допустим a=5, b=10, a,b=b,a), и если возле строковой переменоой поставить *n (допустим text = 'vse.kz ', print(text * 5) то выдаст n-раз значение в консоле/веб браузере, в данном примере будет что-то типа vse.kz vse.kz vse.kz vse.kz vse.kz, т.е. не надо писать цикл for. Ну и плюс что Django кэширует вроде бы веб страницы.


  • 0

#72
Триумфатор

Триумфатор

    Горе от ума =(

  • Модератор
  • 4 999 сообщений

В домашних заданиях по питону rocket science какой-то пошёл. 2d массивы оказалась сложной темой для меня. Хвала пентиуму, решил, хоть и ценой сна.

 

# 19 Программа запрашивает заполнить числами двумерный массив размером NxM, затем заменяет на 0 те элементы
# которые меньше среднего значения всех элементов данной строки

 

Скрытый текст

  • 0

#73
Триумфатор

Триумфатор

    Горе от ума =(

  • Модератор
  • 4 999 сообщений
Как в питоне сделать цикл типа:
n = int(input("Press 1 to func1
Press 2 to func2
Press 0 to exit"))

При нажатии на 0 выходит из цикла, при нажатии на 1 или 2 вызывает функции, но потом снова просит ввести n. И если n меньше нуля и больше 2 запрашивать n снова. У меня если ввести 1, func1 выполняется бесконечно. Если после нее написать break, выходит из цикла полностью. Если continue, результаты func1 игнорятся.
  • 0

#74
Триумфатор

Триумфатор

    Горе от ума =(

  • Модератор
  • 4 999 сообщений
Func1 это метод в классе, на return не реагирует почему-то, как его остановить?
  • 0



Темы с аналогичным тегами python, вопросы, задачки, консультации, программирование

Количество пользователей, читающих эту тему: 2

пользователей: 1, неизвестных прохожих: 1, скрытых пользователей: 0


Размещение рекламы на сайте     Предложения о сотрудничестве     Служба поддержки пользователей

© 2011-2021 vse.kz. При любом использовании материалов Форума ссылка на vse.kz обязательна.