Captcha UIImage to NSString?

时间:2014-10-09 08:30:50

标签: ios objective-c nsstring uiimage web-scraping

这是我的代码:

[self.webScraper scrape:@"https://fordonsfraga.transportstyrelsen.se/fragapaannatfordon.aspx"
               selector:@"//*[@id=\"frmFordonsFraga\"]/table[3]/tbody/tr[7]/td[1]/img"
                handler:^(NSArray *elements, NSError *error) {
                    NSLog(@"Load %lu elements.", (unsigned long)elements.count);

                    for (NSDictionary* img in elements) {
                        NSString* url = [[img objectForKey:@"attributes"] objectForKey:@"src"];
                        NSLog(@"%@",url);
                        NSString* imgUrl = [NSString stringWithFormat:@"https://fordonsfraga.transportstyrelsen.se/%@", url];
                        NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:imgUrl]];
                        UIImage *image = [UIImage imageWithData:data];
                        _logga.image =image;
                        NSUInteger len = [data length];
                        NSFC
                        NSString * string = [[NSString alloc] initWithData:[data base64Encoding] encoding:NSUTF8StringEncoding];
                        NSLog(@"%@", string);


                    }
                }];

基本上它下载了验证码图像,我想将这些数据转换为字符串来回答验证码?图像显示正确。

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:2)

您需要使用OCR(光学字符识别)从图像中提取字符串。您可以使用OCR库(例如tesseractleptonica)。检查Link,您可以获取样本。

答案 1 :(得分:1)

你应该为此做一些图像处理,并不容易。检查OpenCv - 它是一个成功的开源库。 http://opencv.org