
Zart
02.10.2016
12:40:57
>>> win32crypt.CryptProtectData('secret', None, None, None, None, 0)
'\x01\x00\x00\x00\xd0\x8c\x9d\xdf\x01\x15\xd1\x11\x8cz\x00\xc0O\xc2\x97\xeb\x01\x00\x00\x00\xcc\xa5xk\x85*\x8bC\xaf\xb9\xb0N\xdd;\xa58\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x10f\x00\x00\x00\x01\x00\x00 \x00\x00\x00a\x0cwZ\x18\xcc\x8aw/\x8c.%H\xd6\x03\x8a\xa1\xe5&`\x1dX\x06\x91F\x9d\x98\x01\x8a\xc2o}\x00\x00\x00\x00\x0e\x80\x00\x00\x00\x02\x00\x00 \x00\x00\x00\x7f\x14\x85\xdbb\x9b\xe0N\x91\xf0\xee\xa2\xd4\xde\xe89^&{#\xdb\x1fwRi\xe62n\x93\x97$\r\x10\x00\x00\x00N\x8e%\x03pI\xc7~\xc9+\xae\x1f\xa8u\xa6\xf1@\x00\x00\x00\x8b\xcfR&|\xb0\x97%\xa7\xfa\xd0TQ\x06\x8b\x12W-s\xde\xdc$\xc7M\xe4\x90\xebGi\xdd\xfa(\x9c\x95\xfc\x07M\xef\x8b~y\xaa\x1a\xccS7/\xee\x05b\xdfG\xd0\x00\xe5\x1b\xf6\x84[\x14\t\x1c\xc55'
>>> data = win32crypt.CryptProtectData('secret', None, None, None, None, 0)
>>> win32crypt.CryptUnprotectData(data, None, None, None, 0)
(u'', 'secret')

Dmitriy
02.10.2016
12:41:21
вторая ветка?

Zart
02.10.2016
12:41:24
D:\>py -3
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:01:18) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import win32crypt
>>> data = win32crypt.CryptProtectData(b'secret', None, None, None, None, 0)
>>> win32crypt.CryptUnprotectData(data, None, None, None, 0)
('', b'secret')

Google

Dmitriy
02.10.2016
12:42:23
только не кидай ссаными тряпками и заранее не отправляй на сайт

Zart
02.10.2016
12:42:39
pip install pypiwin32

Dmitriy
02.10.2016
12:43:21
та же хуйня

Zart
02.10.2016
12:43:38
вот, это версия под пип

Dmitriy
02.10.2016
12:44:14
ну ты Бог
спасибо

Zart
02.10.2016
12:44:17
pywin32 по хорошему надо ставить инсталлятором, чтобы он регал ком-сервера, но это не дружит с венвами
если не нужно писать свои ком-сервера, то можно вот этот репак выше ставить

Igor
02.10.2016
12:44:42
ставь виндовс 10 и включи в ней линукс сабсистем

Zart
02.10.2016
12:44:48
и нахуя?

Igor
02.10.2016
12:44:48
намного проще всё станет

Zart
02.10.2016
12:44:52
не станет
мне кстати на мой основной десктоп всё еще апдейт не прилетел
в душе ниибу что у них там в консерватории

Google

Zart
02.10.2016
12:45:51
ну и плюс в линупсе нет CryptoAPI
(в смысле того виндового что требуется в условии задачи, а не тот ядреный что для интеграции криптомодулей в ядро)

Dmitriy
02.10.2016
12:54:24
Zart, ещё раз спасибо!
Все работает)
Надо было сразу сюда писать, а не хуетой страдать

Nobue
02.10.2016
13:02:10
куда копать?
тебе не отвечают, потому что вопрос слишком общий и некорректный; копать надо в сторону каких-нибудь веб-фреймворков, список самых популярных можно легко в гугле найти, всякие Flask и еже с ними; если тебе нужен REST сервис, то там что-то вроде tornado нужно итд

Zart
02.10.2016
13:03:51
его задачка костылится на пхп в несколько строк
если же делать нормально - надо изучать, что резко дольше

Nobue
02.10.2016
13:04:09
куда копать?
я к тому что такие базовые знания лучше в гугле почерпнуть сначала, чтобы вопрос правильно задать потом

Илья
02.10.2016
13:04:40

Nobue
02.10.2016
13:04:44

Zart
02.10.2016
13:04:55
можно
а еще можно взять ssi, и тогда задачка решается почти без языков программирования вовсе

Nobue
02.10.2016
13:10:40
думаю можно пойти на компромисс, взять легковесный фреймворк, быстро накидать и реализовать, а потом постепенно улучшить
сделать либу как правильно, код использования фреймворка переписать хорошо итд

Илья
02.10.2016
13:11:53
вот я и хочу сначала накидать
говно

Nobue
02.10.2016
13:11:57
сразу хорошо все равно не получится

Илья
02.10.2016
13:11:57
а потом
доделать

Nobue
02.10.2016
13:12:22
говно
нет, ты как раз старайся накидать как можно лучше

Zart
02.10.2016
13:12:29
в общем ему направление дали - переделать тот скрипт в либу

Nobue
02.10.2016
13:12:30
просто сразу наврядли получится

Google

Илья
02.10.2016
13:13:14

Igor
02.10.2016
13:13:31

Nobue
02.10.2016
13:13:56

Илья
02.10.2016
13:13:59
Так: Flask, web.py что еще?
у меня готовый файл с функциями уже есть
все работает
А если делать нормалное приложение (хоть и для парсера), все равно django самый норм?

Igor
02.10.2016
13:15:43
для парсера джанго это оверкилл, имхо
если тебе не нужна там АДМИНКА АВТОРИЗАЦИЯ КОКОКО МНОГО ПОЛЬЗОВАТЕЛЕЙ

Илья
02.10.2016
13:15:58
Да, нужна
это сервис возможно будет

Igor
02.10.2016
13:16:21
тогда джанго норм, но судя по твоим вопросам ты с ней заебешься )

Илья
02.10.2016
13:16:30
)
хахаха
как точно подметил
да на самом деле есть проект, я типа парсер делаю и щас ищут человека для интерфейсов (Спб)
СПб
вот я думал, может пока сам справлюсь
В итоге, надо парсеры прикручивать к формам и сделать личные кабинеты для пользователей

Igor
02.10.2016
13:18:10
Так: Flask, web.py что еще?
что значит "что еще"?
это всё.
берешь свой "готовый файл с функциями" (my_file.py),
предположим, там так:
def list_product():
return '\n'.join(['product 1', 'product 2', 'product 3'])
делаешь новый файл (app.py например), кладешь его рядом, в нем пишешь
from flask import Flask
import my_file
app = Flask(__name__)
@app.route("/")
def hello():
return my_file.list_products()
if __name__ == "__main__":
app.run()

Google

Igor
02.10.2016
13:19:04
пишешь в консольке python app.py, идешь в браузер на http://127.0.0.1:5000/ и упиваешься счастьем - там отобразится список продуктов из твоего парсера

Илья
02.10.2016
13:19:56
Спасибо!)
попробую

Igor
02.10.2016
13:21:16
(в my_file опечатка, def list_products, конечно же)

Cykooz
02.10.2016
13:36:29
Судя по замашкам на будущее - ему не обойтись без чего то вроде Celery. Хотя он не сказал что за парсер. Может он за 10мс обрабатывает все данные и возвращает результат.


Igor
02.10.2016
13:42:21
Судя по замашкам на будущее - ему не обойтись без чего то вроде Celery. Хотя он не сказал что за парсер. Может он за 10мс обрабатывает все данные и возвращает результат.
я хотел об этом написать, но подумал, что пугать не стоит
отправлю все-таки:
потом делаешь шаблончики с формочками, обрабатываешь полученные POST'ом (или GET'ом) данные, на основе их вызываешь свой парсер как тебе надо
потом понимаешь, что хочешь че-то посерьезнее, юзеров там, модели, базу данных
смотришь, как это можно сделать - можно зафигачить кучу плагинов во фласк, можно снести все нахрен и переписать на громоздкой джанго
понимаешь, что парсить данные по каждому запросу пользователя не круто, делаешь кэш
понимаешь, что кэш - тоже дно, и надо все данные забирать асинхронно, ставишь celery и делаешь таски
находишь инвестора с баблом, пропиваешь всё и начинаешь заново

Илья
02.10.2016
13:49:09
)

Zart
02.10.2016
13:49:28
ну вот, накидали спойлеров про этот сериал

Admin
ERROR: S client not available

Zart
02.10.2016
14:00:36
я хотел об этом написать, но подумал, что пугать не стоит
отправлю все-таки:
потом делаешь шаблончики с формочками, обрабатываешь полученные POST'ом (или GET'ом) данные, на основе их вызываешь свой парсер как тебе надо
потом понимаешь, что хочешь че-то посерьезнее, юзеров там, модели, базу данных
смотришь, как это можно сделать - можно зафигачить кучу плагинов во фласк, можно снести все нахрен и переписать на громоздкой джанго
понимаешь, что парсить данные по каждому запросу пользователя не круто, делаешь кэш
понимаешь, что кэш - тоже дно, и надо все данные забирать асинхронно, ставишь celery и делаешь таски
находишь инвестора с баблом, пропиваешь всё и начинаешь заново
но при этом, сильно поумнев, берет пирамиду, коландер и алхимию, и ебашит в светлое будущее. хэппи енд

Igor
02.10.2016
14:07:07
лет через 20 новые фреймворки будут выходить каждый час. и программисты будут только и заниматься тем что их разучивать. не успел - всё, ты deprecated

Igor
02.10.2016
14:09:26

Zart
02.10.2016
14:10:35
20 фреймворков для добавления пробелов слева
половина из них работает через веб-сервисы

Vlad
02.10.2016
14:33:30
Это,глупый вопрос... У меня есть множество. Я его переделываю в словарь с помощью dict.fromkeys. как мне ключи разные сгенерировать , а то у каждого элемента одинаковый ключ.

Zart
02.10.2016
14:34:26
а значения откуда?
ты путаешь ключи и значения 8\

Igor
02.10.2016
14:46:15

Zart
02.10.2016
14:47:20
видел конечно
и http://left-pad.io тоже

Google

V
02.10.2016
15:02:52
вот тут тонко: https://pypi.python.org/pypi/left-pad/

Vlad
02.10.2016
15:12:22
Аааа, вот что не так.
ты путаешь ключи и значения 8\

Igor
02.10.2016
16:14:26
python -c "print 'Hello world'"

Zart
02.10.2016
16:17:05
добавить скобочек для универсальности

Stanislav
02.10.2016
17:03:10
Вопрос не по питону наверное.
Есть примерная структура бд
Как эту хуйню перенести в базу данных
Ибо в этом дизайнере если делать foreignKey то выходит запутанный пиздец http://i.imgur.com/JFVfDXQ.png

Alex
02.10.2016
17:04:45
с помошью nested tree структуру
если на джанге, есть инструмент https://github.com/django-mptt/django-mptt
очень мощьный инструмент, может любые ноды взять без рекурсий
ну или иначе только foreign key'ами

Stanislav
02.10.2016
17:11:33
Я просто не шарю в базах данных, вроде как простая структура. А по факту все вложенное.
Если бы питоновский ооп был базой данной - там на изи, объект комплекса, в котором объект дома, в этом объекте куча секций, в секциях этажи в этажах квартиры. А тут по факту таблицы и все

Pavel
02.10.2016
17:21:12

Stanislav
02.10.2016
17:22:12

Марк
02.10.2016
17:28:42

Stanislav
02.10.2016
17:35:28
Просто если у тебя raw запросы, то там типо скорость и оптимизация, а если орм то плохо и долго
(хотя и база у меня бомже будет, максимум до 10к записей)

Марк
02.10.2016
17:51:14

V
02.10.2016
18:14:35
@iamigor, @zartsoft про "ё" в регулярке посыпаю голову пеплом, конечно вы правы, оно вне диапазона. убей бог не помню с какого бодуна я решил, что должна быть в нем. более того, благодаря вам до меня сейчас дошло, что в моем домашнем боте есть косяк с этой "ё", просто не всплыл до сих пор, потому что никто почти не использует ее. спасибо!

Amaro
02.10.2016
18:15:44
Эта группа больше не существует