LINUX.ORG.RU

Сообщения amazpyel

 

Не могу подгрузить динамическую библиотеку с помощью сtypes в скрипте

Первый раз попробовал использовать ctypes. В результате запуска примера ниже получаю ошибку о том, что данного файла нет. Хотя скрипт на Python и динамическая библиотека lib.so находятся в одной директории.

Код:

import os.path
from ctypes import *

parentdir = os.path.abspath(os.path.dirname(__file__))
path_to_lib = os.path.join(parentdir, "lib.so") 

# Файл есть
print 'Does path exist? :' + str(os.path.exists(path_to_lib))
lib = cdll.LoadLibrary(path_to_lib)

Ошибка:

Does path exist? :True
Traceback (most recent call last):
  File "test_ctypes.py", line 6, in <module>
    mydll = cdll.LoadLibrary('lib.so')
  File "/usr/lib/python2.7/ctypes/__init__.py", line 443, in LoadLibrary
    return self._dlltype(name)
  File "/usr/lib/python2.7/ctypes/__init__.py", line 365, in __init__
    self._handle = _dlopen(self._name, mode)
OSError: lib.so: cannot open shared object file: No such file or directory

В чем моя ошибка? Подскажите, что я делаю не так. Спасибо

 , , ,

amazpyel
()

Aria2c скачать файл по маске

Подскажите как скачать файл с помощью aria2c, если имя файла меняется ? Т.е. мне известно что имя файла всегда будет оканчиваться на *.test.tar.gz. Не нагуглил и в мане не нашел (или не правильно понял)

 , ,

amazpyel
()

Запуск unit тестов по изменению исходного кода

Добрый день,

Есть большой проект написанный на C. Также есть большое количество unit тестов. После каждого изменения в исходном коде проекта должны запускаться не все тесты, а только тесты, которые тестирует измененный код. Есть ли готовые инструменты?

 , ,

amazpyel
()

Получить вывод после отправки символа с помощью pexpect

Написал скрипт с помощью pexpect для автоматизации работы с консольной программой. Но я не могу разобраться как мне получить результат на экран после выполнения команды

child.sendline("foo")
Я знаю как сохранить все что происходит, но не знаю как мне получить вывод только после выполнения одной команды. Подскажите пожалуйста как мне это сделать.

 ,

amazpyel
()

Сервис цен на продукты питания с публичным API

Странное желание, но все же спрошу. Есть ли сайт с ценами на продукты питания с публичным API?
Не смог нагуглить такое. Сейчас просто занимаюсь парсингом определенных сайтов.

 , ,

amazpyel
()

Посчитать количество уникального слова в файле с помощью регулярки

def count_word(word):
    result = 0
    stop_world = [word, word + '.', word + '".', word + ',']
    save_file = open('output.txt', "r+")
    for word in save_file.read().split():
        if word in stop_world:          
            result += 1
    return result

Подскажите вместо этого:

stop_world = [word, word + '.', word + '".', word + ','] 
регулярное выражение, пожалуйста.

 , ,

amazpyel
()

Передача параметров QLineEdit одного окна в вызываемое окно

Щупаю этот ваш PyQt и весьма радуюсь, а также постоянно сталкиваюсь с проблемами. Я застопорился на элементарном. Структура приложения: главное окно (QWidget) в котором есть кнопочка выбрать файл. После того как файл выбран, то полное имя файла помещается в QLineEdit. Выбранный файл должен открываться в новом окне. Проблема в том, что я не могу передать значение.

Код:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import os
import sys
from PyQt4.QtGui import *
from PyQt4.QtCore import *


class MainWindow(QWidget):
    def __init__(self):
        super(MainWindow, self).__init__()

        self.setWindowTitle("Title")
        self.setWindowIcon(QIcon('icon.png'))
        self.setGeometry(500, 300, 600, 100)

        boxlay = QHBoxLayout(self)
        frame = QFrame(self)
        frame.setFrameShape(QFrame.StyledPanel)
        frame.setFrameShadow(QFrame.Raised)

        gridlay = QGridLayout(frame)

        self.open_button = QPushButton("Select file", frame)
        self.compile_button = QPushButton("Compile", frame)
        self.clear_button = QPushButton("Clear", frame)
        self.show_scenario = QPushButton("View file", frame)
        self.scenario_line = QLineEdit(frame)

        self.dialogWindow = OpenScenario()

        self.output_compiler = QPlainTextEdit(frame)
        self.output_compiler.setFixedSize(1280, 400)

        gridlay.addWidget(self.open_button, 0, 1)
        gridlay.addWidget(self.compile_button, 0, 2)
        gridlay.addWidget(self.clear_button, 0, 3)
        gridlay.addWidget(self.show_scenario, 0, 4)
        gridlay.addWidget(self.scenario_line, 4, 0, 1, 5)
        gridlay.addWidget(self.output_compiler, 5, 0, 1, 5)

        self.clear_button.setEnabled(False)
        self.compile_button.setEnabled(False)
        self.output_compiler.setEnabled(False)
        # self.show_scenario.setEnabled(False)

        boxlay.addWidget(frame)

        self.open_button.clicked.connect(self.dialog)
        self.clear_button.clicked.connect(self.clear_test_field)
        self.scenario_line.textChanged.connect(self.enable_buttons)
        self.show_scenario.clicked.connect(self.on_pushButton_clicked)

    @pyqtSlot()
    def on_pushButton_clicked(self):
        self.dialogWindow.exec_()

    def dialog(self):
        scenario = QFileDialog.getOpenFileName(
            self,
            "Select file",
            "/home/amazpyel",
            "XML (*.xml)"
        )
        if scenario:
            self.scenario_line.setText(scenario)
            self.compile_button.setEnabled(True)
            self.clear_button.setEnabled(True)
            self.compile_button.clicked.connect(lambda: self.compile_file(scenario))

    def compile_file(self, test):
        print test
        self.output_compiler.setEnabled(True)
        scenario = str(test)
        os.system(
            "/home/amazpyel/example" + "-c" + scenario +  ">" + scenario + ".log")
        self.output_log(test + ".log")

    def clear_test_field(self):
        self.scenario_line.clear()
        self.output_compiler.clear()
        self.compile_button.setEnabled(False)
        self.clear_button.setEnabled(False)
        self.output_compiler.setEnabled(False)

    def enable_buttons(self):
        self.clear_button.setEnabled(True)
        self.compile_button.setEnabled(True)

    def output_log(self, file):
        text = open(file).read()
        self.output_compiler.setPlainText(text)


class OpenScenario(QDialog):
    def __init__(self):
        super(OpenScenario, self).__init__()

        self.setGeometry(500, 300, 1280, 800)
        self.setFixedSize(self.size())
        self.setWindowTitle("/home/amazpyel/file.xml")

        boxlay_child = QHBoxLayout(self)
        frame_child = QFrame(self)
        frame_child.setFrameShape(QFrame.StyledPanel)
        frame_child.setFrameShadow(QFrame.Raised)

        gridlay_child = QGridLayout(frame_child)

        self.scenario_view = QPlainTextEdit(frame_child)
        self.scenario_view.setFixedSize(1280, 800)
        gridlay_child.addWidget(self.scenario_view, 0, 1)

        self.verticalLayout = QVBoxLayout(self)
        self.verticalLayout.addWidget(self.scenario_view)
        boxlay_child.addWidget(frame_child)

        sce = "/home/amazpyel/files.xml"
        def open_scenario(self, sce):
            scenario_output = open(sce).read()
            self.scenario_view.setPlainText(scenario_output)

        open_scenario(self, sce)


app = QApplication(sys.argv)
sc = MainWindow()
sc.show()
sc.setFixedSize(sc.size())

sys.exit(app.exec_())

Я хотел передать в класс OpenScenario значение scenario_line из класса MainWindow и не вышло.

Создание экземпляра:

self.dialogWindow = OpenScenario()

Открытие окошка по нажатию на кнопку show_scenario (View File):

self.show_scenario.clicked.connect(self.on_pushButton_clicked)
@pyqtSlot()
def on_pushButton_clicked(self):
   self.dialogWindow.exec_()

 , , ,

amazpyel
()

Отключить «застревание» курсора мыши при перемещении на другой дисплей

«Застревания» курсора при неспешном перемещении курсора на границе дисплеев очень раздражает. Как отключить?

Ubuntu 12.04, Unity.

 , , ,

amazpyel
()

Посоветуйте недорогой фотоаппарат

Посоветуйте сабж до 300 USD на подарок девушке. Дороже дарить - жаба душит. И вообще, она мне не жена и детей мне не рожала :D Или посоветуйте что подарить на день рождение.
Пока склоняюсь к Canon PowerShot S110

 , , ,

amazpyel
()

Что-то не так с разделителями с трекере

Почему-то в трекере появляются не все разделители:
http://itmages.com/image/view/1500206/50f61697

Firefox 27.0

 ,

amazpyel
()

Вставка xml файла в другой xml

Как «вставить» содержимое из одного xml в другой?
Есть файл goal.xml:

<?xml version="1.0" standalone="no" ?>
<!DOCTYPE doc [
<!ENTITY otherFile SYSTEM "otherFile.xml">
]>
<doc>
  <foo>
    <bar>&otherFile;</bar>
  </foo>
</doc>

other.xml:

otherFile.xml:
<baz>this is my content</baz>

В итоге должно получиться:

<?xml version="1.0" standalone="no" ?>
<doc>
  <foo>
    <bar><baz>this is my content</baz></bar>
  </foo>
</doc>

Суть в том, чтобы вставить содержимое из одного xml в другой. Пример взят с http://stackoverflow.com/questions/5121052/can-we-import-xml-file-into-anothe...

Получаю нубские ошибки валидатора:

Element xxx must be declared

P.S. Первый раз возникла необходимость.

 , ,

amazpyel
()

Ищу теплые штаны/джинсы

У нас тут внезапно зима, тело стынет и внезапно для себя обнаружил, что нет у меня теплых штанов или джинс. Посоветуйте годные штаны или джинсы.

 , , ,

amazpyel
()

Измерение производительности операций предустановленных приложений

Необходимо измерить время выполнения операций копирования файлов и т.п. в предустановленном файловом менеджере на Android 4.3. Как мне это сделать? Ужасы.

 , ,

amazpyel
()

Простой скрипт сравнения строк

Написал скриптик для проверки того, что подключено устройство (эмулятор). Просто сравниваю две строки. А результат выполнения скрипта не тот

#!/bin/bash
 
check-for-tizen-device() {
 
  NOT_PRESENT="List of devices attached"
  SDB_FOUND=`sdb devices | tail -2 | head -1 | cut -f 1 | sed 's/ *$//g'`
echo $SDB_FOUND
echo $NOT_PRESENT
  if [[ ${SDB_FOUND} == ${NOT_PRESENT} ]]; then
    echo "Tizen device seems to be missing."
    return 1
  else
    echo "Tizen device found."
    return 0
  fi
}

check-for-tizen-device

Вывод скрипта:

$ ./check.sh
List of devices attached
List of devices attached
Tizen device found.
ЧЯДНТ?

 , , , ,

amazpyel
()

Конвертация .xwd в .png с помощью gimp console

Добрый день,
Я делаю снимки экрана в формате x window dump (.xwd). Мне нужно этот формат экспортировать в популярный .png. У меня есть GIMP. Можно ли без запуска GUI экспортировать xwd в png?

 , , , ,

amazpyel
()

Почему вы не думаете о разрабатываемом продукте как пользователи?

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

  • Вы смотрите требования?
  • Вы задумываетесь о логике требований?
  • Вы думаете о пользователе?

 , ,

amazpyel
()

Компьютер убивает моего брата

Привет,

Традиционная проблема в наше время. У меня есть младший брат, который катится вниз. Как спасти человека? Человек забивает на учебу, ночью играет в Доту, КС. Родители потеряли контроль. Пациенту уже 16 лет.

Линукс уже нет смысла ставить - там уже куча игр. Может есть опыт у кого-то как решить такую проблему?

 , , , ,

amazpyel
()

Как заниматься «вангованием»?

Добрый день,

Кто занимается профессионально «вангованием»? Под «вангованием» я имею ввиду бизнес аналитиков. Если такие люди тут обитают, то хочу спросить вас: что конкретно вы делаете? как обучались и набирались опыта? Какие книги читали?

Линукс тут при том, что продукт делается под линукс.

 , , , ,

amazpyel
()

Samsung 550P5 (NP550P5C-S04RU) и линукс

Привет, ЛОР!

Что скажете по поводу этой машинки? И были ли какие-то проблемы с поиском драйверов на линуксе (убунту)?

http://rozetka.com.ua/samsung_np550p5c-s04ru/p252596/

 , , ,

amazpyel
()

Ресурс для приобретения фильмов в высоком качестве

Специалисты,

Подскажите, есть ли что-то типа онлайн ресурса с возможностью получить легальную копию фильма с возможностью скачать контент себе на локаль. Качество видео - очень высокое. Айтьюнс не предлагать)

Спасибо.

 , , , ,

amazpyel
()

RSS подписка на новые темы