السلام عليكم
كنت انوى تنفيذ فكرة فى بالى وهى تقوم على اضافة موقع فى عدة دلائل مواقع عربية بضغطة زر
لكن واجهتنى مشكلة الكابتشا
بحثت عن مواضيع عنها فى المنتديات العربية ولم اجد الكثير واعتقدت انه لا يوجد حل لتخطيها
ولكن فوجئت بعشرات المواقع الاجنبية التى تقدم خدمة قرائة الكابتشا بمقابل معين
مثلا فك 1000 كابتشا ب 10 دولار وهكذا
ووجدت انها تفك انواع معقدة جدا من الكابتشا
ويستخدمها الاشخاص فى عمل برامج واسكربتات لتخطى مواقع مثل فيسبوك تطالبك مثلا عند اضافة كل صديق الى ادخال الكابتشا
عرفت فى النهاية انها تقوم على قرائة كل بكسل فى الصورة وترجمتها
وجدت كود لهذه العملية ولكن للاسف غير كامل وايضا مرقم ولكن يمكنكم الاستفادة منه
كود PHP:
<?php
09 function imageconverttruecolor(&$image)
10 {
11 $width=imagesx($image);$height=imagesy($image);
12 $final=imagecreatetruecolor($width, $height);
13 imagecopy($final, $image, 0, 0, 0, 0, $width, $height);
14 imagedestroy($image);
15 $image = $final;
16 }
17 $background = imagecreatefrompng('captcha.png');
18 $lettersimg = imagecreatefrompng('letters.png');
19 $captcha = imagecreatefrompng('captcha_search.png');
20 imageconverttruecolor($background);
21 imageconverttruecolor($lettersimg);
22 imageconverttruecolor($captcha);
23 define('x',imagesx($captcha));
24 define('y',imagesy($captcha));
25 $pixels = array();
26 for($x = 0; x>$x; ++$x){
27 for($y = 0; y>$y; ++$y){
28 $s=imagecolorat($background, $x, $y);
29 if($s&&$s==imagecolorat($captcha, $x, $y))
30 $pixels[$x][$y]=0xFFFFFF;
31 else $pixels[$x][$y]=0x000000;
32 }}
33 imagedestroy($background);
34 for($p = 0; 3>$p; ++$p){
35 for($x = 0; 3>$x; ++$x){
36 for($y=0;y>$y;++$y){
37 $filterpixel=1;
38 settype($filterpixel,'boolean');
39 if(!$pixels[$x-1][$y-1]&&!$pixels[$x][$y-1]&&!$pixels[$x+1][$y-1]) $filterpixel = 0; // top
40 if(!$pixels[$x+1][$y-1]&&!$pixels[$x+1][$y]&&!$pixels[$x+1][$y+1]) $filterpixel = 0; // right
41 if(!$pixels[$x-1][$y+1]&&!$pixels[$x][$y+1]&&!$pixels[$x+1][$y+1]) $filterpixel = 0; // bottom
42 if(!$pixels[$x-1][$y-1]&&!$pixels[$x-1][$y]&&!$pixels[$x-1][$y+1]) $filterpixel = 0; // left
43 if($filterpixel) $pixels[$x][$y] = 0xFFFFFF;
44 }}}
45 for($x=0; x>$x; ++$x){
46 $pixels[$x][0] = 0xFFFFFF;
47 $pixels[$x][1] = 0xFFFFFF;
48 $pixels[$x][y - 1] = 0xFFFFFF;
49 $pixels[$x][y - 2] = 0xFFFFFF;
50 }
51 for($y=0; y>$y;++$y){
52 $pixels[0][$y] = 0xFFFFFF;
53 $pixels[1][$y] = 0xFFFFFF;
54 $pixels[x-1][$y] = 0xFFFFFF;
55 $pixels[x-2][$y] = 0xFFFFFF;
56 }
57 for($x=50;54>$x;++$x){
58 for($y=2; $y < 5; ++$y){
59 $pixels[$x][$y] = 0xFFFFFF;
60 }}
?>
حد فهم حاجة فى النص الاخير من الكود
هذا موقع قديم كان يقدم خدمة فك الكابتشا اونلاين ولكن اصبح لا يعمل
http://www.elancetalk.com/decaptcha.php
مواقع تقدم خدمة الفك >
http://www.beatcaptchas.com/
http://www.captchakiller.com/
كل ما اريده هو تخطى هذه الكابتشا البسيطة جدا جدا [بالمقارنة مع الكابتشات المعقدة]
رجاء اذا اى شخص عنده معلومات عن هذه الطريقة يفيدنا