小编f4n*_*4nt的帖子

自动将PDF转换为图像

因此,我所处的状态是以PDF格式发布的一堆数据,但更糟糕的是,大多数(全部?)的PDF似乎是在办公室打印的字母,打印/传真,然后扫描(我们的政府在其最好的呃?)起初我以为我疯了,但后来我开始看到许多"倾斜"的pdf,就像有人没有正确地将它们放在扫描仪上一样.因此,我认为从中获取实际文本的下一个最好的方法是将每个页面转换为图像.

显然这需要自动化,如果可能的话我宁愿坚持使用Python.如果Ruby或Perl有某种形式的实现,它太棒了,我可以走那条路.我已经尝试了pyPDF进行文本提取,这显然对我没什么好处.我已经尝试过swftools,但是我从中得到的图像只是完全无法使用.看起来字体在转换中被破坏了.我也没有真正关心图像格式,只要它们相对轻巧,可读.

python pdf image

31
推荐指数
3
解决办法
6万
查看次数

django for loop counter break

希望这是一个快速/简单的方法.我知道通过自定义模板标签来解决这个问题的方法,但我很好奇是否有其他方法我在看.我为我的博客创建了各种各样的画廊功能,并且我有一个画廊列表页面,用于分割我的所有画廊.现在,我不想显示该列表中每个图库的所有照片,因为如果每个图库甚至有20个图像,那么如果我在5个帖子中分页,则该页面上有100个图像.那是浪费,而且是错误的做事方式.

我的问题是,有没有办法只显示照片集中的3张照片?我想做什么,但我认为不可能是(伪代码):

{% for photos in gallery.photo_set %}
   {% if forloop.counter lt 3 %}
     <img src="{{ photos.url }}">
   {% endif %}
{% endfor %}
Run Code Online (Sandbox Code Playgroud)

从文档来看,除非我完全错过它,否则通过模板系统是不可能的.因此,我可以编写自己的各种模板标签来解决它.我可以从视角来做一些事情,但我没有深入研究这个想法.我的另一个选项是为模型提供预览字段,并允许用户在预览字段中选择他们想要的照片.

无论如何,有几个不同的选择,所以我想我会对观众进行调查,看看你是怎么做到的.任何意见表示赞赏.就个人而言,享受这种猫的皮肤有很多方法.

python django for-loop

27
推荐指数
1
解决办法
2万
查看次数

如何通过SSH远程将命令自动运行到多个服务器并行?

我已经搜索过类似的问题,但除了运行一个命令或者一些命令,例如:

ssh user@host -t sudo su -
Run Code Online (Sandbox Code Playgroud)

但是,如果我基本上需要同时运行一个脚本(比方说)15个服务器.这在bash中是可行的吗?在完美的世界中,我需要尽可能避免安装应用程序.为了论证,让我们说我需要在10个主机上执行以下操作:

  1. 部署新的Tomcat容器
  2. 在容器中部署应用程序并进行配置
  3. 配置Apache vhost
  4. 重新加载Apache

我有一个完成所有这些操作的脚本,但它依赖于我登录所有服务器,从repo中删除脚本,然后运行它.如果这在bash中不可行,你建议用什么替代方案?我是否需要更大的锤子,例如Perl(Python可能是首选,因为我可以保证在RHEL环境中的所有盒子上都有Python,这要归功于yum/up2date)?如果有人能够向我指出任何有用的信息,我将不胜感激,特别是如果它在bash中可行的话.我会满足于Perl或Python,但我只是不知道那些(继续).谢谢!

sysadmin ssh bash command

19
推荐指数
5
解决办法
5万
查看次数

游戏开发声音框架

我正在与一个为各种2D和最终3D迷你游戏构建引擎的团队合作.我们面临的问题是一个可靠,跨平台,健全的API.显然,由于我们对跨平台功能的需求,DirectX是不可能的.SDL很好,而且效果很好,但让我们面对它SDL_Mixer在它可以做的事情上有点受限.我们目前正在使用它,但是当我们最终扩展到3D时,它将成为一个问题.

我一直在搞乱OpenAL,但是我发现的大部分文档都已经过时了,似乎没有那么好用.我愿意学习OpenAL,并通过它来解决问题,但我想更确定一点,我不是在浪费时间.除了DevMaster教程之外,我还没有看到太多的文档让我感到震惊.如果某人有比我发现的更好的材料,那就太棒了.

我也看过FMOD这样的项目,尽管获得了许可,但看起来还不错.但是,与OpenAL一样,它们几乎没有文档.当然,我可以倾倒代码来推断我的选择,但考虑到我最终会为此付出代价,这似乎有点痛苦.

无论如何,想法,评论,关注?非常感谢!

c++ audio openal

12
推荐指数
2
解决办法
8432
查看次数

在尝试内联模型时,<class>在Django中没有<class>的外键

我需要能够创建一个带有20个奇怪的多项选择问题的测验类型应用程序.

我有3种型号:Quizzes,Questions,和Answers.

我想在管理界面中创建一个测验,并内联测验和答案元素.

目标是单击"添加测验",然后转移到包含20个问题字段的页面,每个字段有4个答案字段.

这是我目前的情况:

class Quiz(models.Model):
    label = models.CharField(blank=true, max_length=50)

class Question(models.Model):
    label = models.CharField(blank=true, max_length=50)
    quiz = models.ForeignKey(Quiz)

class Answer(models.Model):
    label = models.CharField(blank=true, max_length=50)
    question = models.ForeignKey(Question)

class QuestionInline(admin.TabularInline):
    model = Question
    extra = 20

class QuestionAdmin(admin.ModelAdmin):
    inlines = [QuestionInline]

class AnswerInline(admin.TabularInline):
    model = Answer
    extra = 4

class AnswerAdmin(admin.ModelAdmin):
    inlines = [AnswerInline]

class QuizAdmin(admin.ModelAdmin):
    inlines = [QuestionInline, AnswerInline]

admin.site.register(Question, QuestionAdmin)
admin.site.register(Answer, AnswerAdmin)
admin.site.register(Quiz, QuizAdmin)
Run Code Online (Sandbox Code Playgroud)

当我尝试添加测验时出现以下错误:

class 'quizzer.quiz.models.Answer'> has no ForeignKey to …
Run Code Online (Sandbox Code Playgroud)

python django django-admin

6
推荐指数
1
解决办法
2万
查看次数

Python中的"大型"拼写检查

令人惊讶的是,我一直无法找到真正做到这一点的人,但肯定有人有.我正在研究一个python项目,目前涉及拼写检查大约16000个单词.不幸的是,这个词数只会增长.现在我从Mongo中拉出单词,遍历它们,然后用pyenchant拼写检查它们.我已经删除了mongo作为潜在的瓶颈,首先抓住我的所有物品.这让我有大约20分钟的时间处理16k字,这显然比我想花的时间长.这给我留下了一些想法/问题:

  1. 显然,我可以利用线程或某种形式的并行性.即使我将其切成4块,我仍然会在大约5分钟内看到最佳性能.

  2. 有没有办法告诉刻录库Enchant在pyenchant下面使用了什么?Enchant的网站似乎暗示它会在拼写检查时使用所有可用的拼写库/词典.如果是这样,那么我可能通过三到四个拼写单词运行每个单词.这可能是我的问题,但我很难证明情况就是这样.即使它是,我的选择真的是卸载其他库?听起来很不幸.

那么,关于如何从中挤出至少更多性能的任何想法?我把它切成并行任务很好,但我仍然希望在我做之前让它的核心部分更快一些.

编辑:对不起,在早晨咖啡之前发帖...如果单词拼写错误,附魔会为我生成一个建议列表.这似乎是我花费大部分时间在这个处理部分的地方.

python spell-checking pyenchant

6
推荐指数
1
解决办法
3621
查看次数

捕获Linux中的输入

首先,是的,我知道这个问题,但我正在寻找更多的信息.实际上,我有一个相当类似的问题,因为我需要能够捕获鼠标/键盘/操纵杆的输入,而且我还想尽可能避免使用SDL.我或多或少想知道是否有人知道在哪里可以获得一些关于处理来自Linux设备的输入的一些不错的引物,甚至可能是一些教程.SDL非常适合跨平台输入处理,但我不会在SDL中使用任何其他东西,所以我想完全删除它.建议,意见和帮助都表示赞赏.谢谢!

为清晰起见编辑:

重点是捕捉鼠标运动,键盘按下/释放,鼠标点击以及游戏的潜在操纵杆处理.

c++ linux

5
推荐指数
1
解决办法
6069
查看次数

使用svn + ssh进行pysvn

我正在使用pysvn,我正在尝试找到一种合适的方法来处理只能通过svn + ssh访问的存储库.显然,SSH密钥使这一切变得异常简单,但我无法保证最终用户将使用SSH密钥.这也必须能够在没有用户交互的情况下运行,因为它将进行一些svn日志解析.

最大的问题是,使用svn + ssh会弹出一个交互式提示进行身份验证.显然我希望能够让pysvn自动使用一组给定的凭据登录,但是set_default_username和set_default_password在这方面对我没有任何帮助.如果我不能拥有它,我至少希望能够失败,并记录一条消息告诉用户设置SSH密钥.但是,set_interactive似乎与此无关,我仍然会提示输入client.log('svn + ssh:// path')的密码.

有关如何解决这个问题的任何想法?是否真的有可能在没有SSH密钥的情况下处理这个问题,因为SSH正在抛出提示?

python svn ssh pysvn

5
推荐指数
1
解决办法
1547
查看次数

Django形成新手问题

好吧,我对Django Forms感到茫然,因为文档似乎并没有完全涵盖我正在寻找的东西.一旦你超越了最基本的形式,至少它似乎会嘎然而止.作为答案,我非常愿意链接到良好的文档,或链接到涵盖此主题的好书.基本上,这是它如何分解,我有3个模型(测验,问题,答案).我有20个问题,每个测验有4个可能的答案(多项选择).数字可以变化,但你明白了.

我需要为这些项目创建一个表单,就像你在多项选择测验中所期望的那样.但是,当我在模板中手动创建表单时,而不是使用django.forms,我得到以下内容:

int()的基数为10的无效文字:'test'

所以我试图弄乱django.forms,但我想我只是没有理解如何用这些来构建一个合适的形式.非常感谢任何帮助,谢谢.

这里的模型值得一提:

class Quiz(models.Model):
    label = models.CharField(blank=True, max_length=400)
    slug = models.SlugField()

    def __unicode__(self):
        return self.label

class Question(models.Model):
    label = models.CharField(blank=True, max_length=400)
    quiz = models.ForeignKey(Quiz)

    def __unicode__(self):
        return self.label

class Answer(models.Model):
    label = models.CharField(blank=True, max_length=400)
    question = models.ForeignKey(Question)
    correct = models.BooleanField()

    def __unicode__(self):
        return self.label
Run Code Online (Sandbox Code Playgroud)

python forms django

4
推荐指数
1
解决办法
4458
查看次数

Django数据库缓存

我正在开发一个小项目,我想为最终用户提供多个缓存选项.我认为使用Django交换memcached进行数据库或基于文件的缓存非常简单.我的memcached实现就像一个没有任何问题的冠军.我在我的页面上放置了时间戳,并且卷曲始终在我希望缓存正常工作的位置显示较旧的时间戳.但是,当我切换到数据库缓存时,我没有在数据库中获得任何条目,并且公然缓存不起作用.

从我在文档中看到的所有应该是必要的是改变后端:

CACHE_BACKEND = 'memcached://localhost:11211'
Run Code Online (Sandbox Code Playgroud)

至:

CACHE_BACKEND = 'db://cache_table'
Run Code Online (Sandbox Code Playgroud)

在运行所需的manage.py(createcachetable)行之后,该表存在,我可以很好地查看它.我目前正在测试,所以我使用sqlite3,但就我所知,这应该不重要.我可以确认该表是完全空的,并且在任何时候都没有写入.另外,正如我之前所说,我的时间戳也是"错误的",这给了我更多的证据证明某些事情并不完全正确.

有什么想法吗?我正在使用sqlite3,Django 1.0.2,python 2.6,目前在Ubuntu Jaunty机器上通过Apache提供服务.我敢肯定我只是简单地谈论一些事情.感谢您提供的任何帮助.

python django django-cache

4
推荐指数
1
解决办法
2772
查看次数