
M ?????
11.07.2018
13:08:52
Есть хорошие книги/онлайн руководства по matplotlib и seaborn? Визуализация научных данных «вообще» тоже подойдёт.
Стандартные руководства и туториалы на сайтах уже смотрены были.

Заблокировали?
11.07.2018
13:10:42
Пытаюсь спарсить сайт. Нужно получить [<div class="gamers"><span itemprop="playersOnline">455</span>/1000</div>](455 или другое число)
Получаю такую ошибку

Tigran
11.07.2018
13:10:49
эмм, а кто всё потёр и зачем?

Google

Заблокировали?
11.07.2018
13:10:59
https://pastebin.com/93XrqAQj
Код

Bair
11.07.2018
13:11:20
да, я тоже думаю че за глюк, оказывается потерли

VLadimir
11.07.2018
13:13:24
@fngut2rt4 у тебял cols - ведь тоже list
https://pastebin.com/1h7ZyHuX

Заблокировали?
11.07.2018
13:18:25
Ну да
А, понял
Как получить просто число?

VLadimir
11.07.2018
13:23:39
сорян чуть не так
https://pastebin.com/7JHDKQ26
все равно надо дописать чтобы понять какое число к чему относится

Заблокировали?
11.07.2018
13:26:16
Зачем, они же по порядку будут идти

Костя
11.07.2018
13:26:22
ребят, вопрос такой
хочу парсить с разных криптобирж курсы к баксу
На всех биржах из html не могу забрать, потому что там скрипт стоит, а циферок в исходном коде нет. Что делать, кто знает?
Можно как-то страничку в готовом виде получать после того как скрипт проработал?

Google

Заблокировали?
11.07.2018
13:27:25
import requests
url = 'site'
r = requests.get(url)
with open('test.html', 'wb') as output_file:
output_file.write(r.text.encode('cp1251'))
Вот так сохранить страницу

Костя
11.07.2018
13:27:57
да? все настолько просто?) ?
ща попробую) спасибо

Виталий
11.07.2018
13:28:54
Requests разве js исполняет?
https://github.com/kanzure/pyphantomjs

mr
11.07.2018
13:31:02
*в браузере

Костя
11.07.2018
13:32:22
а так да, туда в первую очередь иду

mr
11.07.2018
13:33:19

Виталий
11.07.2018
13:33:50

Костя
11.07.2018
13:34:18

Виталий
11.07.2018
13:34:46
В примере выше просто получение тела страницы без исполнения скриптов
Хотя можно было посмотреть откуда дергаются курсы и брать напрямую. Если конечно механизм запроса не особо сложный

Tigran
11.07.2018
13:42:36
блять, куда опять всё делось

Bair
11.07.2018
13:43:30
мож это у нас с тобой двоих глюки :)

Tigran
11.07.2018
13:43:58
@fahreeve @gloomy_philosopher тут пропадают сообщения пачками, это админских рук дело?

Eldar
11.07.2018
13:44:10

Google

Tigran
11.07.2018
13:44:22
ну ты предупредил бы хоть

Eldar
11.07.2018
13:44:49
ну я думал, что всем очевидно, что это оффтоп

Bair
11.07.2018
13:45:15

Tigran
11.07.2018
13:45:19
ну не знаю, мне кажется, математическая логика - не настолько оффтоп, чтоб прям тереть

Костя
11.07.2018
13:45:57

Admin
ERROR: S client not available

макс
11.07.2018
13:46:03

Bair
11.07.2018
13:46:47

Костя
11.07.2018
13:47:55

Eldar
11.07.2018
13:48:21
и не мне))


Tigran
11.07.2018
13:50:35
Котоны, такой вопрос. Вот у меня есть сервер на flask, и на нём есть эндпоинт, который возвращает event stream. Кто не в курсе, это такое соединение с клиентом, которое длится вечно и иногда шлёт ему сообщения с сервера. Для того, чтобы его создать, надо из эндпоинта вернуть Response(генератор, mime_type="text/event-stream"). Генератор, соответственно, либо делает какие-то блокирующие вызовы типа redis.rpop, либо делает неблокирующие всякие запросы в БД и если клиенту послать нечего, делает time.sleep(сколько-то). Если я правильно понимаю, при этом целый тред фласка уходит в обслуживание чисто одного такого потока событий, и, соответственно, мне нужно иметь количество тредов, пропорциональное количеству моих клиентов (что гипотетически дохуя). Вопрос: можно прямо во фласк как-нибудь ввернуть асинхронность так, чтобы не упираться в этом сценарии в количество потоков?


Denis
11.07.2018
13:51:54
Котоны, такой вопрос. Вот у меня есть сервер на flask, и на нём есть эндпоинт, который возвращает event stream. Кто не в курсе, это такое соединение с клиентом, которое длится вечно и иногда шлёт ему сообщения с сервера. Для того, чтобы его создать, надо из эндпоинта вернуть Response(генератор, mime_type="text/event-stream"). Генератор, соответственно, либо делает какие-то блокирующие вызовы типа redis.rpop, либо делает неблокирующие всякие запросы в БД и если клиенту послать нечего, делает time.sleep(сколько-то). Если я правильно понимаю, при этом целый тред фласка уходит в обслуживание чисто одного такого потока событий, и, соответственно, мне нужно иметь количество тредов, пропорциональное количеству моих клиентов (что гипотетически дохуя). Вопрос: можно прямо во фласк как-нибудь ввернуть асинхронность так, чтобы не упираться в этом сценарии в количество потоков?
Ха

Tigran
11.07.2018
13:51:59
Оооо, привет, Самат
настоящий? )

Denis
11.07.2018
13:52:18
Для джанги есть channels, мб для фласка тоже какой костыль прикрутили


Jentry
11.07.2018
13:52:30
Котоны, такой вопрос. Вот у меня есть сервер на flask, и на нём есть эндпоинт, который возвращает event stream. Кто не в курсе, это такое соединение с клиентом, которое длится вечно и иногда шлёт ему сообщения с сервера. Для того, чтобы его создать, надо из эндпоинта вернуть Response(генератор, mime_type="text/event-stream"). Генератор, соответственно, либо делает какие-то блокирующие вызовы типа redis.rpop, либо делает неблокирующие всякие запросы в БД и если клиенту послать нечего, делает time.sleep(сколько-то). Если я правильно понимаю, при этом целый тред фласка уходит в обслуживание чисто одного такого потока событий, и, соответственно, мне нужно иметь количество тредов, пропорциональное количеству моих клиентов (что гипотетически дохуя). Вопрос: можно прямо во фласк как-нибудь ввернуть асинхронность так, чтобы не упираться в этом сценарии в количество потоков?
Выглядит как нужно взять вебсокеты и го


Cykooz
11.07.2018
13:52:43
Лучше навеное запилить этот эндоинт отдельным прилжением на aiohttp?

Denis
11.07.2018
13:52:47
А вебсокеты и асинк не?

Tigran
11.07.2018
13:52:48

Google

Tigran
11.07.2018
13:53:01
Я могу, конечно, отдельную компоненту под это дело написать, но чот не хочется.

f1nnix
11.07.2018
13:53:17

Samat
11.07.2018
13:53:30
привет! :)

Bair
11.07.2018
13:53:44
кто такой Самат и чем он известен, расскажите, что за персона)

Samat
11.07.2018
13:53:50
да вы уж наверняка догадались, пришел спамить все группы вакансией своей

Tigran
11.07.2018
13:54:11
в Медузу?