Уведомления

Группа в Telegram: @pythonsu

Уведомления

  • Found 3492 posts.

Флейм » Ищу программиста для разработки программ для ЭВМ » Апрель 1, 2016 13:41:41

Утра всем!
Ищу миддла под моё прямое руководство. Надо писать код, много. По ссылке немного умных слов:
https://spark.ru/job/4719/back-end-razrabotchik-na-python
Цифры: 80-120 килорублей, но рамки не жёсткие.

Python для новичков » Grab фреймворк, 100% нагрузка CPU » Март 28, 2016 13:17:27

Хочу сделать простой прокси чекер на потоках:
from grab import Grab
import threading
import random
import time
def test_proxy(proxy):
    grab = Grab(url = 'https://api.ipify.org?format=json', connect_timeout = 10, proxy = proxy, proxy_type = 'socks5')
    try:
        grab.request()     
        print(grab.response.unicode_body())
    except Exception as e:
        print(e)        
        
proxyList = Grab().go('http://api.best-proxies.ru/feeds/proxylist.txt?key=01YvxflHzjs4eyNvDhtrdeoU&type=socks5&limit=0').unicode_body().split('\r\n')
for i in range(50):
    threading.Thread(target= test_proxy, args= [random.choice(proxyList)]).start()
    
while threading.active_count() > 1:
    time.sleep(1)
Все работает, если прокси - socks5. Если http(s) - тоже работает, но грузит проц на 100%, код тот же самый:
from grab import Grab
import threading
import random
import time
def test_proxy(proxy):
    grab = Grab(url = 'https://api.ipify.org?format=json', connect_timeout = 10, proxy = proxy, proxy_type = 'http')
    try:
        grab.request()     
        print(grab.response.unicode_body())
    except Exception as e:
        print(e)        
        
proxyList = Grab().go('http://api.best-proxies.ru/feeds/proxylist.txt?key=01YvxflHzjs4eyNvDhtrdeoU&type=https&limit=0').unicode_body().split('\r\n')
for i in range(50):
    threading.Thread(target= test_proxy, args= [random.choice(proxyList)]).start()
    
while threading.active_count() > 1:
    time.sleep(1)
Буду сильно благодарен за любой совет или намёк, как пофиксить это дело, уже некоторый день мучаюсь. Тестил на WinXP, Win7, Win 8.1, на разных Python версиях (3.4, 3.4.3, 3.5.1), пробовал установить разные PyCurl версии, проблема та же самая.
Питон изучаю недавно.

Django » Вывести список строк из таблицы c привязкой к чекбоксу » Март 28, 2016 03:43:26

Сейчас из контекста в шаблон передается переменная, данные из которой через итерацию формируют таблицу строк:
{{ url.id }}, {{ url.name }} …
Нужно все это завернуть в форму и к каждой строчке прикрутить чекбокс. Но сейчас переходим на crispy_forms и не пойму как можно с помощью него такое сделать.

Django » связь трех моделей для админки » Март 27, 2016 08:27:41

Есть три модели:
class Place(models.Model): 
    place_id = models.AutoField(primary_key=True)
    place = models.CharField(max_length=10, null=False)
class Host(models.Model): 
    host_id = models.AutoField(primary_key=True)
    place = models.ForeignKey('Place', on_delete=models.PROTECT)
    host = models.CharField(max_length=30, blank=False, null=False)
class Device(models.Model):
    device_id = models.AutoField(primary_key=True)
    host = models.ForeignKey('Host', on_delete=models.PROTECT)
    model = models.ForeignKey('Model', on_delete=models.PROTECT)
    ip = models.GenericIPAddressField(null=True)
    name = models.CharField(max_length=30, blank=False, null=False)

В админке django для модели Device хочу видеть и Place, для ограничения количества записей и более удобной работы. Но как привязать Place, если она относится к Device через модель Host?
На данный момент админ-модель для Device такая:
class DeviceAdmin(admin.ModelAdmin):
    list_display=('host', 'name', 'model', 'ip', 'slots')
    list_filter = (
        'host__place', 
        ('host', admin.RelatedOnlyFieldListFilter),
        ('model', admin.RelatedOnlyFieldListFilter),
    )
    def host_place(self, instance):
        return instance.host.place
    host_location.short_description = 'Place'
    host_location.admin_order_field = 'host__place'
admin.site.register(Device, DeviceAdmin)

Здесь такая связь работает только для фильтрации при просмотре. А мне нужно, чтобы Place было видно при добавлении/редактировании Device.

Python для новичков » C Питона в Ардуино. » Март 26, 2016 07:59:36

Приветствую всех! Я новичок в Питоне, так что за любую мою тупость прошу простить.
Пишу проект с OCR на питоне. Благодаря гуглу нашел код.

Он работает и с ним, вроде бы, все в порядке. А я бы хотел, чтобы он текст отправлял в ардуино. Я слышал насчет pyserial и пробовал сделать что-то сам, но увы ничего не вышло, так как руки не из того места растут. Так вот, у меня вопрос, можно ли осуществить мою затею и как это сделать.
Буду благодарен за любую помощь!

import cv2 
from PIL import Image 
from pytesser import * 
from time import sleep 
IMAGE_FILE = 'something.jpg' 
while True: 
# save image from webcam 
img = cv2.VideoCapture(0).read()[1] 
cv2.imwrite(IMAGE_FILE, img) 
# load image 
img = Image.open(IMAGE_FILE) 
# detect words in image 
words = image_to_string(img).strip() 
print words 
sleep(5)

Python для новичков » pyqt автоматическое расширение scrollarea по горизонтали при увеличении размера новых label » Март 22, 2016 21:46:17

Подскажите пожалуйста, ни как не могу догадаться как это сделать
from PyQt4 import QtGui
 
 
class Board(QtGui.QWidget):
    def __init__(self):
        super(Board, self).__init__()
        self.all_notification = []
 
        self.scroll_layout = QtGui.QVBoxLayout()
 
        self.scroll_widget = QtGui.QWidget()
        self.scroll_widget.setLayout(self.scroll_layout)
 
        self.scroll_area = QtGui.QScrollArea()
        self.scroll_area.setWidgetResizable(True)
        self.scroll_area.setWidget(self.scroll_widget)
 
        self.main_layout = QtGui.QVBoxLayout()
        self.main_layout.addWidget(self.scroll_area)
        self.setLayout(self.main_layout)
 
        self.default_label = QtGui.QLabel(
            '{}Уведомлений нет{}'.format(' ' * 14, ' ' * 14)
        )
        self.scroll_layout.addWidget(self.default_label)
        self.scroll_layout.addStretch(0)
        self.all_notification.append(self.default_label)
 
    def add_notification(self, massage):
        self.all_notification[0].hide()
 
        notification = QtGui.QLabel(massage)
 
        self.scroll_layout.addWidget(notification)
        self.all_notification.append(notification)
        self._remove_stretch()
        self.scroll_layout.addStretch(0)
 
    def _remove_stretch(self):
        for i in reversed(range(self.scroll_layout.count())):
            item = self.scroll_layout.itemAt(i)
            if isinstance(item, QtGui.QSpacerItem):
                self.scroll_layout.removeItem(item)
                return
 
 
app = QtGui.QApplication([])
w = QtGui.QWidget()
l = QtGui.QHBoxLayout()
w.setLayout(l)
 
but = QtGui.QPushButton('Добавить сообщение')
l.addWidget(but)
 
b = Board()
l.addWidget(b)
 
but.clicked.connect(lambda: b.add_notification('wefew' * (b.scroll_layout.count() + 2)))
 
w.show()
app.exec_()

Web » Не работают на сервере cgi скрипты. » Март 20, 2016 20:34:44

Сервер apache.OS ubuntu 14.02(или 04,не помню).
Сайт: ссылка.

Python проекты » Python-programmer » Март 18, 2016 19:13:51

Добрый день.
В дружную команду требуется back-end разработчик. Необходимо достойное знание Python (Django в частности), понимание PostgreSQL. Интерес в области high-load, e-commerce (понимание взаимодействия платежных модулей с архитектурой сервиса).
Мы ищем человека, который нацелен на долговременное партнёрство, основанное на взаимоуважении:
1. От Вас требуется быть готовым уделять существенную часть собственного времени общему делу;
2. Умение читать чужой код и расширять функционал сервиса, на основе внесения предложений и обсуждения с командой (стартовая версия ресурса создаётся профессиональными разработчиками в соответствии со стандартами PEP8, имеет комментарии к коду и покрытие его Unit-тестами для достижения максимальной преемственности ресурса с точки зрения серверной разработки);
3. И, самый главный пункт, – открытость и честность.
Укажите условия сотрудничества, которые Вам интересны, а мы ответим, что сможем предложить.
utoptal@gmail.com
utoptal – Skype
г. Москва
Пару строк о сервисе:
Предлагается удовлетворение базовых человеческих потребностей в деньгах и самореализации.
Проект конъюнктурный, с достаточной степенью локализации и широкими возможностями масштабирования.
Бизнес модель составлена на основе “бенчмаркинга” иностранных компаний сопредельных направлений деятельности, которые имеют высокую капитализацию и устойчивые финансовые показатели.
Дополнительные данные будут высылаться по мере возникновения обоюдного интереса.

Python для новичков » Создание SafeArray переменной » Март 17, 2016 09:00:00

Добрый день!
Разрабатываю программное обеспечение автоматических измерений (это мой первый проект на python). Есть прибор, с ним поставляется драйвер, который реализует спецификацию IVI-COM (не полностью), и “драйвер может работать в любой другой среде разработки, которая поддерживает технологию COM”. Для работы использую comtypes. В общем-то всё нормально, параметры и настройки передаются, но никак не могу получить данные с прибора.
По документации на прибор (вct примеры в документации на C++):
Имя метода: Acquisition.Channels.Item.FetchData
Описание: Извлечение данных измерительного канала.
Вид COM метода:
HRESULT FetchData( SAFEARRAY(DOUBLE)* DataArray,
DOUBLE* InitialX,
DOUBLE* XIncrement);

Python постоянно ругается на первый параметр “SAFEARRAY(DOUBLE)* DataArray”, подозреваю, что переменная, которую я передаю имеет неправильный тип. Array.array('d') пробовал, документацию на comtypes читал, в поисковиках искал…

Есть ли возможность прямо задать, что массив имеет тип SafeArray? Может есть какие-нибудь аналогичные примеры? Как использовать safearray.py в пакете comtypes?

Центр помощи » Как разместить в вершинах графа фото » Март 16, 2016 09:39:02

Для построения графа использую networkx. Как разместить в вершинах графа фото. Возможно ли. Если нет какую библиотеку использовать. Предполагаю, что есть уже готовая ссылка. Прошу помощи. Спасибо.

Python для экспертов » Доработка скрипта на python » Март 14, 2016 17:22:18

Не нашел раздела для размещения платных проектов, пишу сюда.
Есть таблица в google docs, в нее скрипт подтягивает информацию по сделкам из amocrm, статистику из яндекс директа и google adwords. нужно внести некоторые изменения, например добавить новое поле из amocrm, которого не было, добавить аккаунт директа и т.д. ТЗ пришлю подробное, если в целом можете взяться. связь по скайпу vslartem

Флейм » Разыскивается толковый питонист в молодой стартап » Март 14, 2016 14:43:08

Всем привет!

Разыскивается толковый питонист в молодой стартап - SaaS собственные Мобильные Приложения для медицинских учреждений.

Используемый стек:
Python, Django-Rest-Framework, PostgreSQL, Redis, Celery, Dokku.

Что нужно будет делать:
- поддержка API для мобильного и web приложений.
- разработка нового функционала
- интеграции со сторонними сервисами

Кого хотим видеть:
В меру самостоятельный и уверенный Python-разработчик умеющий Django и любящий unit-тесты

Part-time удаленка, 10-20 часов в неделю или попроектная работа. Есть вариант с full-time занятостью со второго-третьего месяца.

Прошу писать на мейл ak@medicalapps.ru или в skype: andrew_kazaryan

Флейм » Модераторам: верстка письма при уведомлении » Март 11, 2016 04:03:28

Привет всем. Это обращение к владельцам этого сайта.

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



Как видите, вся верстка сообщения поплыла. Читать крайне неудобно. GMail включен на обычный режим, а не экономный. Оригинальное сообщение выглядит так (выделил цветом, чтобы было лучше видно скриншоты):



Не могли бы вы сделать что-то с этим? Отправлять HTML письмо, а не просто текст, к примеру.

Спасибо за внимание!

Python проекты » Требуется партнер программист Python в StartUP проект » Март 6, 2016 14:47:48


Цель проекта: Сервис для автоматизации действий пользователей в онлайн играх.
Требования:
Знание: Python, RESTful Flask
Навыки работы с API и проектирования веб сервисов.
Ответственность, целеустремленность, работа на результат.
Желание сделать свой сервис который принесет прибыль.
Отправляйте свой Skype для связи
Работа удаленно

Python для экспертов » subprocess, не работает метод poll() » Март 6, 2016 07:24:20

В ubuntu пишу код
# coding: utf8
import subprocess
import time
cmd1 = 'gnome-terminal -e "python /home/bmf/test.py"'
b = subprocess.Popen(cmd1, shell=True)
print b.poll()
time.sleep(3)    
print(b.poll()) 
time.sleep(2)    
print(b.poll())  
print("start waiting")
b.wait()         
print("stop waiting")
time.sleep(1)   
print(b.poll()) 

скрипт test.py вот
import time
i = 50
while i > 0:
	print 'test'
	time.sleep(1)
	i = i - 1

вот вывод
None
0
0
start waiting
stop waiting
0
почему нули если процесс еще не отработал? Причем у другого человека аналогичный код нормально отрабатывает.. У меня ни на ubuntu ни на debian не работает.

Network » Как сделать ветвление в telnet сессии с помощью telnetlib? » Март 5, 2016 18:24:17

Добрый день!
Возникла потребность условного исполнения в телнет сеансе. Т.е. я коннекчусь к устройству, а далее я хочу вводить команды в зависимости от того, что перед этим было прочитано в консоли. Например,
tn = telnetlib.Telnet("10.251.58.18", 23)
tn.read_until(b"login:",5)
tn.write(b"admin\n")
tn.read_until(b"Password:",5)
tn.write(b"admin\n")
# Здесь я хочу организовать ветвление:
# if
tn.read_until(b"admin@RGR>",5)
# then
tn.write(b"show configuration | display set\n ")
# elseif
tn.read_until(b"opeator#M10#>",5)
# then
tn.write(b"show running-config\n ")
# но не знаю как. 
s1=tn.read_until(b"admin@RGR>",50)
tn.close();
sys.stdout = open('10.251.58.18.txt', 'w')
print(s1) 

Можно ли организовать сабж? В example'ах telnetLib'а искал, но там не описываются подобные примеры.

Центр помощи » Нужно переделать скрипт » Фев. 28, 2016 18:49:25

Здравствуйте! имеется задача по машинному обучению. Нужно реализовать метод рандомных деревьев. Загвоздка заключается в том, что я Python не знаю. Я понимаю конечно что написано в коде (если нету спецефичных функции), но этих знаний не хватает для решения задачи.

Имеются данные, на основе которых я получил тестовые данные

train=pd.read_csv('train.csv')
x = train.iloc[:, 0:12]
y = train.iloc[:, 13]
from sklearn.cross_validation import train_test_split
x_train, x_test, y_train, y_test = train_test_split(x, y, test_size=0.3)
Дальше я не знаю, что делать. Нам выдали файл пример с расширением .ipynb и сказали что с помощью Anaconda мы должны реализовать по примеру. Но я остановился лишь на переделке того, что указал выше.

Требуется Python-специалист, который поможет решить данную задачу. Естественно не за спасибо!

Python для новичков » poplib как скачать аттачи? » Фев. 28, 2016 18:41:14

Как при помощи библиотеки poplib получить письма и аттачи из них? Или посоветуете другую библиотеку?

Mobile Python » ChessPyS60 » Фев. 26, 2016 11:11:12

Подскажите, как создать простую шахматную доску в стиле консольных шахмат (ASCII)?
Хотелось бы создать клиент freechess.org для S60v3