الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف اقوم باستخراج معلومات من قوقل الى محرك البحث الخاص بي

مغلق
بدأه منال76 في 5 أكتوبر 2011 · 14 رد · 1,363 مشاهدة · في الذكاء الاصطناعي وتطبيقاته
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

سلام

الرجاء من لديه ولو قليل من المعرفة التكرم هنا

اريد ان اقوم بعمل محرك بحث، بحيث يقوم بجلب المعلومات من قوقل، ولكن تحديدا المعلومة المطلوبة

قرأت في ابحاث كثر، لكن لحداثة عهدي بالموضوع، اشعر بالضياع

عامل الوقت مهم جدا

الرجاء من لديه اي معلومه يدلي بها

* اريد عمل برنامج بلغة c ان امكن

#2

السلام عليكم ..

اقتباس
اريد ان اقوم بعمل محرك بحث، بحيث يقوم بجلب المعلومات من قوقل

هل تريد بناء محرك بحث خاص بك Indexer + Crawler أم تريد بناء برنامج يجلب نتائج البحث من جوجل ...؟

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#3
houssam11350_11350 كتب:

السلام عليكم ..

هل تريد بناء محرك بحث خاص بك Indexer + Crawler أم تريد بناء برنامج يجلب نتائج البحث من جوجل ...؟

وعليكم السلام والرحمة

أريد برنامج يجلب البحث من قوقل

ولكن ليس على شكل روابط وانما الاجابة الصحيحة فقط

مثلا لو كانت لدي مشكلة في الطابعة مجرد اذكر ماهية المشكلة فيظهر الحل من قوقل

وجزاك الله خير

#4

السلام عليكم ....

اقتباس
أريد برنامج يجلب البحث من قوقل

برنامج بأي لغة برمجة C# أو Java أو غير ذلك ؟

على كل حال ..

يجب أن يكون لديك مفتاح Key لاستخدامه في عملية البحث ... و الحصول عليه مجاني (يتطلب أن يكون لك حساب على جوجل) و يطلب منك إدخال اسم موقعك الخاص (أي اسم .. يعمل)

الرابط

هذا مثال عن ذلك بالــ C#

var searchTerm = "Egypt";
            string key = "ABQIAAAAMW_b2xJiDTn5Pc07VFagGBT7xIwe-BGTYY4hbC9tKawsbhSxc89sgJklBt83GJLRsx55IJ8wWg";
            using (var web = new WebClient())
            {
                web.Headers.Add("Referrer", "http://your-website-here/");
                var result = web.DownloadString(String.Format(
                       "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q={0}&key={1}",
                       searchTerm , key));
                Console.WriteLine(result);

طبعا لاستخلاص النتائج نحن بحاجة إلى مكتبة JSON رابط

فقط حدد لغة البرمجة كي نحاول وضع الكود كاملا ..

تم تعديل هذه المشاركة بواسطة houssam11350_11350 في 5 أكتوبر 2011 في 09:18

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#5

جزاك الله خير

انشئت موقع لأحصل على المفتاح

وراح استخدم لغة c++ لانشاء البرنامج

#6

السلام عليكم ..

اقتباس
انشئت موقع لأحصل على المفتاح

تقصدين حساب على جوجل ( ايميل على GMail)... (لا داعي للموقع ... بمعنى Web Site )

اقتباس
وراح استخدم لغة c++ لانشاء البرنامج

أي مترجم C++ ستستخدمين ...ما رأيك بــ Visual C++ .NET ؟؟؟؟

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#7
houssam11350_11350 كتب:

السلام عليكم ..

تقصدين حساب على جوجل ( ايميل على GMail)... (لا داعي للموقع ... بمعنى Web Site )

ايميل وصفحة الكترونية وبعد ذلك حصلت على الكي

اقتباس
Your key is:

ABQIAAAA11NJeFl6SDuc0FN79h8y3RQUwbmBB1fNAj3FiEz1Md5EaljsxRTvzHy7jdVOJHjAqUENOG5V3B-EGQ

أي مترجم C++ ستستخدمين ...ما رأيك بــ Visual C++ .NET ؟؟؟؟

نزلت الفيجوال c++ .net

ولو اني عادة اشتغل على الفيجوال بيسك دوت نت، ولكن هذه المرة اريد تحدي نفسي

من سنوات عملت على الc++ ولكن وجدت فيه صعوبه واستسهلت الفيجوال بيسك

ما اريد عمله في برنامجي هو مربع حوار يضع فيه المستخدم سؤاله (مثلا: يظهر لي هذا الخطا ..... عند الطباعة ونوع الطابعة ....)

وبمجرد ان يضغط على زر بحث

يظهر له النتيجة في نفس البرنامج من قوقل

ولكن ليست على شكل روابط وانما الحل: (قم بفعل كذا وكذا)

قرأت في ابحاث كثر عن الـ parsing - extract data from web, meta data, data mining, clustring algorithms

وحقيقة شعرت بالضياع وخاصة ان المطلوب مني حاليا كتابة الـ Proposal لمشروعي وليس لدي أدنى فكرة

شكرا على المساعدة وجزاك الله الجنة

#8

السلام عليكم ...

اقتباس
ولو اني عادة اشتغل على الفيجوال بيسك دوت نت، ولكن هذه المرة اريد تحدي نفسي

على فكرة يتم ترجمة كل لغات الــ .NET سواء كانت (C# , VB.NET , C++.NET) إلى لغة واحدة هي MSIL .. و هي كلها تستخدم الــ Dot Net Framework ... على كل حال أنا يمكنني كتابة الأكواد بكل هذه اللغات , فلا مشكلة لدي ....

اقتباس
ما اريد عمله في برنامجي هو مربع حوار يضع فيه المستخدم سؤاله

على بركة الله .....

اقتباس
قرأت في ابحاث كثر عن الـ parsing - extract data from web, meta data, data mining, clustring algorithms

وحقيقة شعرت بالضياع وخاصة ان المطلوب مني حاليا كتابة الـ Proposal لمشروعي وليس لدي أدنى فكرة

لا اعتقد أن هذا العمل يصلح كمشروع أكاديمي .... (خدمة البحث مقدمة من جوجل و الــ Parsing عن طريق مكتبة الــ JSON أو TSON <حسب معلوماتي>) ....فما هو دورك ...؟

ما هي نوع المساعدة المطلوبة ؟

أنا معلوماتي عن الموضوع أخذتها من هذه الصفحة رابط

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#9

أولا جزاك الله خير وجعله في موازيين حسناتك

لدي استفسار ...

هل هذا البرنامج يقوم باستعراض النتائج على شكل روابط؟

وإن كان كذلك ، هل بالامكان التعديل عليه لاستخراج محتوى الرابط ، لا الرابط نفسه؟

أنا لن أقوم ببحث اكاديمي رغم ان هذا المطوب، لأن (شخصيا) البحث يأخذ مني اكثر من فصل دراسي لاتمامه، خاصة بدون خلفيه مسبقه

وسبق ورأيت مشاريع دكتوارة في هذا المجال

أنا حاليا أريده كمشروع لمادة النظم الموزعة، وهي أول مرة اتعرف بها على هذا الاختصاص، ومع الاسف المادة اجباريه ولا يوجد لدي خلفية سابقه

ومع هذا سأحاول بأذن الله على تطويره

هل تستطيع ان تكتب خطوات عمل هذا البرنامج؟

اكرر شكري وامتناني

#10

السلام عليكم ...

اقتباس
هل هذا البرنامج يقوم باستعراض النتائج على شكل روابط؟

نقوم بعمل Parsing للنتائج , نظهر المحتوى فقط (لو أردنا يمكننا إظهار الروابط) .

اقتباس
أنا حاليا أريده كمشروع لمادة النظم الموزعة، وهي أول مرة اتعرف بها على هذا الاختصاص

هذا الموضوع لا علاقة له بالـلنظم الموزعة , و طالما انه عندك معلومات عن VB.NET يمكنك عمل تطبيق موزع بالــ Dot Net Remoting أو بالجافا باستخدام الــ CORBA أو RMI .

اقتباس
هل تستطيع ان تكتب خطوات عمل هذا البرنامج؟

- نقوم بتحميل مكتبة الــ JSON المسؤولة عن عمل Parsing للنتائج من هنا رابط

ثم Downloads ثم نختار Other Downloads و نختار Json.NET 3.5 Release 8 (رابط مباشر للتحميل هنا <و ربما لا يعمل>)ويمكن اختيار الإصدار المناسب لك . و على فكرة الموقع الرسمي هنا www.json.org .

نفتح الملف المضغوط الذي حملناه ثم نفك ضغطه ثم إلى المجلد الناتج ثم إلى مجلد اسمه Bin نأخذ الملف Newtonsoft.Json.dll و نضيفه كــ Reference للمشروع (يعمل على كل لغات الدوت نت ) (لا تتعب نفسك الملف Newtonsoft.Json.dll موجود في مجلد المشروع بالمرفقات).

طبعا نأخذ مشروع جديد Visual C++ نوعه Windows Form Application (أنا لغتي المفضلة هي الــ C# ثم الــ VB.NET) .. فيظهر لدينا نافذة الفورم و نقوم بسحب الأزرار و خانات النص عليه :

post-94677-018794100 1317887458_thumb.pn

نضيف الملف Newtonsoft.Json.dll كــ Reference للمشروع ..نقرة يمينية على المشروع - References - ثم Add New Reference ثم Brows ثم نحدد الملف Newtonsoft.Json.dl .

ثم في حدث الـ Click لزر البحث ... نكتب :

String^ key = "ABQIAAAA11NJeFl6SDuc0FN79h8y3RQUwbmBB1fNAj3FiEz1Md5EaljsxRTvzHy7jdVOJHjAqUENOG5V3B-EGQ";
				 System::Net::WebClient^ web = (gcnew  System::Net::WebClient());
				 web->Headers->Add("Referrer", "http://your-website-here/");
				// String^ result = web->DownloadString(String::Format(
				//	 "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q={0}&key={1}",
				//	 txtSearchFor->Text , key));

				 String^ result = web->DownloadString(String::Format(
					 "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&rsz=large&safe=active&q={0}&start=1&key={1}",
					 txtSearchFor->Text , key));



				 //MessageBox::Show(result);
				 JObject^ o = (JObject^)JsonConvert::DeserializeObject(result);
				 //MessageBox::Show(o["responseData"]->ToString());
				 JEnumerable<JToken^>^ en =  o["responseData"]["results"]->Children();
				 IEnumerator^ enumerator = en->GetEnumerator();
				 webBrowser1->DocumentText =L"<html><body>";
				 txtResult->Text = L"";
				 while(enumerator->MoveNext())
				 {
					 JToken^ joTken = (JToken^)enumerator->Current;

					 String^ url = joTken->Value<String^>(L"url");
					 String^ title = joTken->Value<String^>(L"title");
					 String^ content = joTken->Value<String^>(L"content");
					 txtResult->Text += content;
					 //txtResult->Text += L"\r\n-------";

					 //webBrowser1->DocumentText += content;


				 }
				 //webBrowser1->Refresh();
				 String^ theHtml = String::Concat(L"<html><body>" , txtResult->Text , L"</html></body>");
				 MessageBox::Show(theHtml);
				 webBrowser1->DocumentText = theHtml;

... و سيعمل بإذن الله

ملاحظة 1 :

لا أعرف لماذا فقط يجلب نتيجة واحدة ... (أليس كذلك) ...

ملاحظة 2 :

اعتقد انه من الأفضل استخدام لغة الــ VB.NET طالما تعرفينها مسبقا ..

بانتظار رد الخبراء ..

ArabTeamSearchEngine2.rar

المرفقات
google_search.PNG

تم تعديل هذه المشاركة بواسطة houssam11350_11350 في 6 أكتوبر 2011 في 11:02

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#11

الله يسعدك ويوفقك

#12
اقتباس
الله يسعدك ويوفقك

و انت أيضا الله يسعدك و يوفقك ...و ييسر لك علمك ..

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#13

مرحبا

اقتباس
Dot Net Remoting أو بالجافا باستخدام الــ CORBA أو RMI .

هل لديك فكرة؟ تنفع لمشروع؟

* ماني قوية بالجافا

#14

السلام عليكم

اقتباس
هل لديك فكرة؟ تنفع لمشروع؟

باستخدام هذه التقنيات يمكن برمجة أي نظام موزع (نظام يعمل على عدة أجهزة) ... طبعا ممكن نأخذ امثلة مثل شركة لها مقر رئيس و عدة فروع .. بنك بعدة فروع .... (أي شئ بعدة فروع) ..

طبعا يمكن تحقيق ذلك باستخدام مخدم قواعد البيانات أو البنية Client - Server (Socket)..

هل تعرف ما الفرق بين الأثنين (المفروض تعرفوا بعد انتهاء الكورس) ؟

الجواب : في Client -server (أنا أتحدث عن الــ Socket ) يتم نقل الـ Data ...

أما في RMI و CORBA و .NET Remoting فيتم نقل الـتحكم Control ..

على فكرة كل من RMI و الــ CORBA و الــ .NET Remoting هي شكل من أشكال استدعاء الإجراء البعيد Remote Procedure Call -RPC

..

اقتباس
* ماني قوية بالجافا

يمكن كتابة الــ Dot Net Remoting باستخدام الــ VB.NET

تم تعديل هذه المشاركة بواسطة houssam11350_11350 في 8 أكتوبر 2011 في 09:40

لا إله إلا الله ... محمد رسول الله

لو كانت مشاركتي مفيدة و تريد تشجيعي على المزيد من العطاء , فضلا قم بتقييم المشاركة

المعرًف القديم : houssam11350_11350

من مواضيعي : ArabGenCode : مولد كود و إجراءات مخزنة و واجهات لجداول سيكوال سيرفر

#15

الموضوع خرج عن سياق الذكاء الصناعي والمشاركات خرجت عن نطاق الموضوع نفسه

الموضوع مغلق قم بفصل مواضيعك وفي الأماكن المناسبقة لها من فضلك

تحياتي

حزمة المحرك الإصدارة 0.8

أي أحد يجد أني ظلمته فليراسلني

وبإذن الله لو كان له حق سيأخذه

728x90.png

هذا الموضوع مغلق.

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…