小编Cod*_*man的帖子

Python Tesseract OCR问题

我有这个图像:

替代文字

我想用python将它读成字符串,我认为这不会那么难.我发现了tesseract,然后是使用tesseract的python脚本的包装器.

所以我开始阅读图像,直到我尝试阅读这个图片时,它才做得很好.我是否必须训练它才能阅读特定的字体?有关该特定字体的任何想法?或者是否有一个更好的ocr引擎,我可以使用python来完成这项工作.

编辑:也许我可以围绕数字制作某种向量,然后以更大的尺寸重绘它们?更大的图像是更好的tesseract ocr似乎阅读它们(没有意外大声笑).

python ocr tesseract image-manipulation image-processing

10
推荐指数
2
解决办法
6652
查看次数

如果我知道其中的标签,我如何使用Perl的HTML模块找到div的内容?

自从我问到如何使用正则表达式解析html并得到一些抨击(理所当然)之后,我一直在研究HTML :: TreeBuilder,HTML :: Parser,HTML :: TokeParserHTML :: Elements Perl模块.

我有这样的HTML:

<div id="listSubtitlesFilm">
  <dt id="a1">
    <a href="/45/subtitles-67624.aspx">
      .45 (2006)
    </a>
  </dt>
</div>
Run Code Online (Sandbox Code Playgroud)

我想解析出来/45/subtitles-67624.asp,但更重要的是我想知道如何解析div的内容.

我在前一个问题上得到了这个例子:

while ( my $anchor = $parser->get_tag('a') ) {
    if ( my $href = $anchor->get_attr('href') ) {
 #http://subscene.com/english/Sit-Down-Shut-Up-First-Season/subtitles-272112.aspx
        push @dnldLinks, $1 if $href =~ m!/subtitle-(\d{2,8})\.aspx!;
    }
Run Code Online (Sandbox Code Playgroud)

这非常适用于此,但是当我尝试编辑它并在``div`上使用它时它不起作用.这是我试过的代码:

我尝试使用此代码:

while (my $anchor = $p->get_tag("dt")) {
  if($stuff = $anchor->get_attr('a1')) {
    print $stuff."\n";
  }
}
Run Code Online (Sandbox Code Playgroud)

html perl html-parsing

5
推荐指数
3
解决办法
9029
查看次数

如何在提交表单后下载WWW :: Mechanize文件?

我有代码:

#!/usr/bin/perl
use strict;
use WWW::Mechanize;

my $url = 'http://divxsubtitles.net/page_subtitleinformation.php?ID=111292';
my $m = WWW::Mechanize->new(autocheck => 1);
$m->get($url);
$m->form_number(2);
$m->click();
my $response = $m->res();
print $m->response->headers->as_string;
Run Code Online (Sandbox Code Playgroud)

它提交了页面上的下载按钮,但我不确定如何下载POST后发回的文件.

如果可能的话,我想用wget下载这个.我以为他们可能是秘密网址传递的东西?或者我是否必须直接从响应流中下载LWP?

那么如何下载该标题中的文件?

谢谢,

科迪古德曼

perl download www-mechanize form-submit

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

fk_name'user'不是<class'satchmo_store.contact.models.Contact'>的ForeignKey

我正在使用django 1.3.1和satchmo 0.9.2.我使用了Satchmo附带的名为Contact的默认模型.我创建了一个satchmo_mod应用程序和一个admin.py文件.

pip install django==1.3.1
pip install -r http://bitbucket.org/chris1610/satchmo/raw/tip/scripts/requirements.txt
pip install satchmo 0.9.2

django-admin.py startproject fk_test
cd fk_test
python manage.py startapp satchmo_mod
Run Code Online (Sandbox Code Playgroud)

然后创建admin.py:

from satchmo_store.contact.models import Contact
admin.site.unregister(Contact)
admin.site.register(Contact)
Run Code Online (Sandbox Code Playgroud)

然后我跑:

python manage.py runserver
Run Code Online (Sandbox Code Playgroud)

去:

127.0.0.1:8000
Run Code Online (Sandbox Code Playgroud)

得到此错误:

fk_name 'user' is not a ForeignKey to <class 'satchmo_store.contact.models.Contact'>
Run Code Online (Sandbox Code Playgroud)

我在堆栈跟踪中看到此错误并开始探索:

/home/cody/work/martin-instruments/virtual-envs/mi-prod-copy/lib/python2.6/site-packages/django/contrib/admin/validation.py in validate_inline
    fk = _get_foreign_key(parent_model, cls.model, fk_name=cls.fk_name, can_fail=True) ...
? Local vars
Variable    Value
parent_model    
<class 'satchmo_store.contact.models.Contact'>
cls 
<class 'satchmo_mod.admin.UserTaxExemptInline'>
parent  
<class 'django.contrib.admin.options.ModelAdmin'>
f   
<django.db.models.fields.related.OneToOneField object at 0x2ec2250>
Run Code Online (Sandbox Code Playgroud)

简而言之,当Contact模型重新注册时,就我所知,所有的_meta选项都没有被重新生成.请参阅下面的'manage.py shell'会话:

envs/mi2.0/mi$ ./manage.py …
Run Code Online (Sandbox Code Playgroud)

django foreign-keys django-models django-admin satchmo

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

我是否需要使用类在Perl中的子类中使用它的方法?

好的,在Perl编码,只是有一个快速的问题.我创建了一个名为SubtitleSite的类,它基本上是一个抽象,以及一个名为podnapisi的类,它继承了SubtitleSite,如下所示:

@ISA = qw(SubtitleSite);
Run Code Online (Sandbox Code Playgroud)

我的问题是,我必须使用:

use SubtitleSite;
Run Code Online (Sandbox Code Playgroud)

为了能够访问SubtitleSite中的所有方法?

oop perl inheritance

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

TypeError:无法连接'str'和'instance'对象(python urllib)

编写python程序,我在使用该urllib.urlopen函数时想出了这个错误.

Traceback (most recent call last):
File "ChurchScraper.py", line 58, in <module>
html = GetAllChurchPages()
File "ChurchScraper.py", line 48, in GetAllChurchPages
CPs = CPs + urllib.urlopen(url)
TypeError: cannot concatenate 'str' and 'instance' objects


 url = 'http://website.com/index.php?cID=' + str(cID)
        CPs = CPs + urllib.urlopen(url)
Run Code Online (Sandbox Code Playgroud)

python urllib

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

为什么我的方法打印"isObjectName = SCALAR(0x1289df0)"?

使用Perl的OOP新手,只是有一个简单的问题.我在课堂上有这个功能:

sub Print{
    my $text = shift;
    print "my text is", $text;
}
Run Code Online (Sandbox Code Playgroud)

我尝试通过这样做来打印文本:

my $object = ObjectName->new();
$object->Print("Print this text")
Run Code Online (Sandbox Code Playgroud)

它打印这个:

my text isObjectName=SCALAR(0x1289df0)

我的问题是,它为什么要这样做,我怎样才能简单地打印我作为参数传递的文本?

oop perl

2
推荐指数
3
解决办法
147
查看次数

如何使这个Python代码更易于使用和可读?

初学者在python中,但现在已经编程了大约5年.我怀疑我有很多东西要学习以面向对象的方式做事,但我知道基础知识.我计划编写一个计算器,显示它可以从中获得挑战和知识.我刚刚开始,这就是我所拥有的,它对我来说真的很难看.你会怎么做得与众不同?

PS这只是一个简单的脚本,可以从括号内部解决问题,添加它,显示工作,然后评估完整的问题.

import re

def EvalParenths(problem):
    contents = ""
    if re.match( "\(", problem):
        contents = re.match("(\(.*\))", problem)
        parenthsAnswer = contents.group(0)
        problem = problem.replace(parenthsAnswer, '')
        print "   \ \n   "  + str(eval(parenthsAnswer)) + problem
        problem = problem.replace(parenthsAnswer, '')
        answer = eval(parenthsAnswer+problem)
        print "    \ \n    " + str(answer)
    else:
        print "Didn't Find Parenthesis"

def ProblemHasParenths(problem):
    return re.match( "\(", problem)

"""""
Example Problem: (12/4)*2

"""""

problem = raw_input()

if ProblemHasParenths:
    EvalParenths(problem)
Run Code Online (Sandbox Code Playgroud)

python oop usability readability

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

使用Perl解析与正则表达式链接的HTML页面

可能重复:
如何使用Perl从HTML中删除外部链接?

好吧,我正在为一个客户工作,他刚刚将他的语言选择改为Perl.我不是Perl中最好的,但我之前用它做过这样的事情,虽然不久前.

有很多像这样的链接:

<a href="/en/subtitles/3586224/death-becomes-her-en" title="subtitlesDeath Becomes Her" onclick="reLink('/en/subtitles/3586224/death-becomes-her-en');" class="bnone">Death Becomes Her
        (1992)</a>
Run Code Online (Sandbox Code Playgroud)

我想匹配路径"/ en/subtitles/3586224/death-become-her-en"并将它们放入数组或列表中(不确定Perl中哪些更好).我一直在搜索perl文档,以及查看正则表达式教程,并且大多数(如果不是全部)似乎都倾向于使用〜=来匹配内容而不是捕获匹配.

谢谢,

科迪

html regex perl parsing html-parsing

0
推荐指数
1
解决办法
2216
查看次数