Skynet

          ---------- ---------- 我的新 blog : liukaiyi.cublog.cn ---------- ----------

            BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
            112 Posts :: 1 Stories :: 49 Comments :: 0 Trackbacks
          參考:
          http://blog.csdn.net/lanphaday/archive/2007/10/28/1852726.aspx
          http://www.zhuaxia.com/item/852269537



          在web抓取,有些網(wǎng)站會判斷過度讀取會有驗證碼輸入:

          pic
          pic1



          java
          package Main;

          import java.awt.image.BufferedImage;
          import java.net.URL;

          import javax.imageio.ImageIO;

          public class Test {

              
          public static void main(String[] args) throws Exception {
                  BufferedImage img 
          = ImageIO.read(new URL("file:/C:/src/python/gve/22.jpeg"));
                  
          int imgWith = img.getWidth();
                  
          int imgHeight = img.getHeight();
                  
          int bgint = img.getRGB(00);
                  
          for (int y = 0; y < imgHeight; y++) {
                      System.out.println();
                      
          for (int x = 0; x < imgWith; x++) {
                          System.out.print(getBit(img, x, y,bgint));
                      }
                  }
              }

              
          private static char getBit(BufferedImage img, int x, int y,int bgint) {
                  
          int intCurtColor;
                  intCurtColor 
          = img.getRGB(x, y);
                  
          return (intCurtColor == bgint) ? '0' : ' ';
              }
          }

                         000     000 0        0 00 0 0     0 0   
                                  0 000      00 0 0 0      0  0    
                       00 00      0  0 00       0    00   0 00 0   
                     0000   0 0    0  0 0            0   00    0 0  
                      00    0           0             0  00      0  
                      00    0       00 0           0     00     0   
                     0 0     0      0 0            0       00   0   
                      00    00    0  0  0          0         0 00 0   
                     0 0              0 00        0         0 0 0   
                     0       00        0         0             0 00   
                      0 0   00         0 0                      00  
                       00   0           0      00 0        0  0 0     
                         00  0   0 0  00       0 0          0 0 0   
                         0 0      00 0 0        00          0000      
                                                                    





          python
          #encoding=utf-8
          import Image,ImageEnhance,ImageFilter
          import sys

          image_name 
          = "./22.jpeg"

          #去處 干擾點
          im = Image.open(image_name)
          im 
          = im.filter(ImageFilter.MedianFilter())
          enhancer 
          = ImageEnhance.Contrast(im)
          im 
          = enhancer.enhance(2)
          im 
          = im.convert('1')

          #im.show() #測試查看

          = 12      #啟始 切割點 x
          = 2       #啟始 切割點 y

          = 10      #切割 寬 +y
          = 15      #切割 長 +x

          im_new 
          = []
          for i in range(4): #驗證碼切割
              im1 = im.crop((s+w*i+i*2,t,s+w*(i+1)+i*2,h))
              im_new.append(im1)

          #im_new[0].show()#測試查看

          xsize, ysize 
          = im_new[0].size
          gd 
          = []
          for i in range(ysize):
              tmp
          =[]
              
          for j in range(xsize):
                  
          if( im_new[0].getpixel((j,i)) == 255 ):
                      tmp.append(
          1)
                  
          else:
                      tmp.append(0)
              gd.append(tmp)

          #看效果
          for i in range(ysize):
              
          print gd[i]


          比如 "0"
          [1, 1, 0, 0, 0, 0, 1, 1, 1, 1]
          [0, 0, 0, 0, 0, 0, 0, 1, 1, 1]
          [0, 0, 0, 1, 1, 0, 0, 0, 0, 1]
          [0, 0, 1, 1, 1, 1, 0, 0, 0, 1]
          [0, 0, 1, 1, 1, 1, 0, 0, 0, 1]
          [0, 0, 1, 1, 1, 1, 0, 0, 0, 1]
          [0, 0, 1, 1, 1, 1, 0, 0, 0, 1]
          [0, 0, 1, 1, 1, 1, 0, 0, 0, 1]
          [0, 0, 1, 1, 1, 1, 0, 0, 0, 1]
          [0, 0, 0, 1, 1, 1, 0, 0, 0, 1]
          [0, 0, 0, 1, 1, 0, 0, 0, 0, 1]
          [1, 0, 0, 0, 0, 0, 0, 0, 1, 1]
          [1, 1, 0, 0, 0, 0, 0, 1, 1, 1]


          有時間 在學(xué)習(xí)下 匹配。



          整理 www.aygfsteel.com/Good-Game
          posted on 2008-10-18 14:53 劉凱毅 閱讀(3082) 評論(0)  編輯  收藏 所屬分類: pythonimage
          主站蜘蛛池模板: 新昌县| 静海县| 汝州市| 平远县| 珲春市| 什邡市| 湟源县| 梅河口市| 辉南县| 枝江市| 西华县| 英山县| 盘山县| 虞城县| 大城县| 海淀区| 安龙县| 莱阳市| 翼城县| 格尔木市| 长沙县| 略阳县| 招远市| 阿克苏市| 福泉市| 阿尔山市| 铜梁县| 青冈县| 凤冈县| 蒲城县| 隆化县| 沂水县| 长葛市| 腾冲县| 大竹县| 凌云县| 上思县| 上高县| 长兴县| 手机| 通江县|