انجمن‌های فارسی اوبونتو

کمک و پشتیبانی => برنامه‌سازی => نویسنده: Afshin_Zavar در 19 مهر 1386، 10:13 ب‌ظ

عنوان: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: Afshin_Zavar در 19 مهر 1386، 10:13 ب‌ظ
باید یه سایت طراحی کنم که مشخصات یه کتاب رو بگیره و از بین چند سایت ، کتاب رو جستجو کنه.
مثل کاری که سایت AstalaVista واسه جستجوی Cr@ck ها از بین سایتهای مختلف میکنه.  ::)
اما اصلا نمیدونم چطور باید اطلاعات چند سرور رو جستجو کنم!   :'(
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: مهدی پیشگوی در 19 مهر 1386، 10:28 ب‌ظ
راستش افشین جان این موضوع ارتباطی به برنامه نویسی تحت لینوکس نمی تونه داشته باشه مگر اینکه با پایتون خودتون یه چیزی بنویسین البته تحت وب منظورم هستش ولی خوب میشه اسکریپتشو پیدا کرد. الان حضور ذهن ندارم یادم بمونه از دوستام می پرسم خبر میدم
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: Afshin_Zavar در 20 مهر 1386، 12:27 ق‌ظ
زبانش میتونه ASP یا PHP و چیزی شبیه به اینها باشه.

اینجا طرحش کردم. چون ممکنه از بین دوستان لینوکسی، برنامه نویسای حرفه ای هم باشن که بتونن کمکم کنن
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: ابراهیم در 22 مهر 1386، 12:59 ق‌ظ
سلام،
این فقط یک مسأله‌ی برنامه‌نویسی ساده نیست! پشتش کلی مطلب مربوط به Web Serviceها و Search Engineها خوابیده.
اگر مطمئن نیستی علم و فن کافی رو داری، دست به کار نشو!
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: Bayazee در 22 مهر 1386، 06:38 ب‌ظ
من فكر می كنم كار سختی نیست !
البته تا حدی بستگی داره به سایت ها و مخازنی كه می خوای در حقیقت پس زمینه كارت باشند . در اكثر مواقع كار جستجو در وب سایت های مختلف خیلی راحت هست . كافی هست متغییری رو به یك صفحه بفرستی و نتایجش رو بگیری . حالا با كمی كار روی نتایج و فرمت اونها می تونی چیزی بنویسی كه كار كنه  ;)
كمی بیشتر توضیح بدی یا لینك یكی از این سایت های هدف رو بگذاری بیشتر می تونیم كمكت كنیم .
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: lomion در 22 مهر 1386، 07:12 ب‌ظ
سلام،
این فقط یک مسأله‌ی برنامه‌نویسی ساده نیست! پشتش کلی مطلب مربوط به Web Serviceها و Search Engineها خوابیده.
اگر مطمئن نیستی علم و فن کافی رو داری، دست به کار نشو!
موافقم
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: مهدی پیشگوی در 22 مهر 1386، 09:39 ب‌ظ
من فكر می كنم كار سختی نیست !
البته تا حدی بستگی داره به سایت ها و مخازنی كه می خوای در حقیقت پس زمینه كارت باشند . در اكثر مواقع كار جستجو در وب سایت های مختلف خیلی راحت هست . كافی هست متغییری رو به یك صفحه بفرستی و نتایجش رو بگیری . حالا با كمی كار روی نتایج و فرمت اونها می تونی چیزی بنویسی كه كار كنه  ;)
كمی بیشتر توضیح بدی یا لینك یكی از این سایت های هدف رو بگذاری بیشتر می تونیم كمكت كنیم .
موافقم
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: Afshin_Zavar در 22 مهر 1386، 11:09 ب‌ظ
نقل‌قول
كافی هست متغییری رو به یك صفحه بفرستی و نتایجش رو بگیری . حالا با كمی كار روی نتایج و فرمت اونها می تونی چیزی بنویسی كه كار كنه
بیشتر توضیح بده.

نقل‌قول
كمی بیشتر توضیح بدی یا لینك یكی از این سایت های هدف رو بگذاری بیشتر می تونیم كمكت كنی
سایتهایی مثل Koders.com که فقط سورس کد ها رو جستجو میکنه و Collectors که بیشتر کتابها رو جستجو میکنه و AstalaVista که فقط کرکها رو جستجو میکنه.

عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: hamid206 در 24 مهر 1386، 07:04 ق‌ظ
سلام .
نمی دونم شاید تا الان به جوابت رسیده باشی !! ولی خوب جواب من شما. با زبان perl که یک زبان گزارش گیری هست می تونی براحتی اینکار رو انجام بدی یه کتاب هم در این مورد نوشته شده که توش مثال هایی در مورد جمع اوری اطلاعات از پایگاه یاهو و امازون بود الان اسمش یادم نیست ولی اگه با زبان perl اشنایی داری من می تونم بگردم برات اسمش رو پیدا کنم ( رو هاردم داشتم فعلا گم شده ;D )
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: jafar_tavakolian در 24 مهر 1386، 08:13 ق‌ظ
اول اینکه یه زبان application نویسی تحت وب مثل PHP انتخاب کن!
و حالا این چیزی که تو گفتی مربوط به DDB هست!
ما دو نوع سیستم پایگاه داده در حالت کلی داریم یکی DDB هست یکی C/S
دومیه که مشخصه Client , Server هست به این معنا که مثل همین سایت و پایگاه داده اش روی یه جای مشخص ذخیره می شه!
اما حالت اول که آدم به خودش می گه آخه چطور ممکنه؟ پایگاه داده به متمرکز بودن و اینکه همه اطلاعات یه جا باشه شهرت داره!‌حالا چه جوری می شه همه اطلاعات نا متمرکز می شه؟ جاهایی هستند مثل مثلا ایران خودرو یه بخش دارن به نام حساب مالی یه بخش بیمه یه بخش اطلاعات پرسنلی و الی آخر!
اینا هر کدوم یک برنامه مستقل دارن!‌ و داره کار می کنه اما یه نیاز احساس می شه که این ها رو به هم وصل کنن!‌ این دقیقا کار همون DBMS هست ( منظورم مثل MySQL, SQL Server, Oracle ) هست که بیاد یک Base بذاره که این اطلاعات مثلا یکی پایگاه داده اش Access  اونیکی Oracle یا اونیکی SQL Server که بتونه با همه صحبت کنه و طرف حسابش این باشه!

مفاهیم پایگاه داده روحان کوهی مرجع خوبی می تونه باشه برای آشنایی بیشتر!  ;)
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: Afshin_Zavar در 24 مهر 1386، 09:57 ق‌ظ
نقل‌قول
نمی دونم شاید تا الان به جوابت رسیده باشی !! ولی خوب جواب من شما. با زبان perl که یک زبان گزارش گیری هست می تونی براحتی اینکار رو انجام بدی یه کتاب هم در این مورد نوشته شده که توش مثال هایی در مورد جمع اوری اطلاعات از پایگاه یاهو و امازون بود الان اسمش یادم نیست ولی اگه با زبان perl اشنایی داری من می تونم بگردم برات اسمش رو پیدا کنم
محبت کن  ;D

نقل‌قول
مفاهیم پایگاه داده روحان کوهی مرجع خوبی می تونه باشه برای آشنایی بیشتر!
ممنون ولی من تعاریف Client Server رو سالها پیش خوندم.  دنبال یه موضوع دیگه هستم.
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: lomion در 24 مهر 1386، 12:16 ب‌ظ
اول اینکه یه زبان application نویسی تحت وب مثل PHP انتخاب کن!
مفاهیم پایگاه داده روحان کوهی مرجع خوبی می تونه باشه برای آشنایی بیشتر!  ;)
مفاهیم پایگاه داده روحانی رانکوهی مرجع خوبیه ولی برای این کار باید کاربردی تر به ماجرا نگاه کنید.
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: ابراهیم در 24 مهر 1386، 02:58 ب‌ظ
در ضمن این قضیه تقریباً هیچ ربطی به DDB نداره!!!
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: hamid206 در 24 مهر 1386، 09:49 ب‌ظ
سلام
اسم کتاب Spidering Hacks بود تا اونجایی که یادم میاد فصل 4 اون بود که در این مورد صحبت می کرد  ;)
یا حق
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: lomion در 24 مهر 1386، 09:58 ب‌ظ
DDB!!  :o  :o ابعاد مساله رو جالب می‌بینید...

هم می‌تونه DDB باشه و هم نباشه... که من شخصا طرفدار نبودنش هستم چون کار رو سخت میکنه... به نظر من و همونطور که قبلا گفتن، می‌شه روی یک ماشین جستجو سوار شد... (گوگل معمولا خوب سواری می‌ده...  :P) و بعد نتایج رو پالایش کرد. این ساده‌ترین راهه. حالا می‌تونید با Semantic  Web هم غنی ترش کنید... ولی عجالتا یه معماری ازش دربیاد تا بعد...  ;)
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: میلاد در 24 مهر 1386، 10:13 ب‌ظ
سلام
با استفاده از  کلاس HTTP::Request و یا curl در پی اچ پی به راحتی میتونی محتوای موارد نظرتو از سایت مورد نظر به دست بیاری.
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: Bayazee در 24 مهر 1386، 10:27 ب‌ظ
اوه ! اینجا فكر كنم همه تخصص سخت كردن و پیچیده كردن مسایل رو دارند !!
در ثانی بحث بر روی نحوه پیاده سازی هست ! حالا هر كسی می تونی از هر زبانی دوست داشت استفاده كنه . برای این برنامه هم اصلا نیازی به پایگاه داده نیست ! شایدم من خوب متوجه نشدم !! چطوری می تونید با دیتا بیس سایتی كه بهش دسترسی ندارید ارتباط برقرار كنید ؟!؟! شما با رابط اون كه یا صفحه وب یا یكسری API هست سرو كار خواهید داشت .
سعی كنید برنامه هدف رو تا حد ممكنه ساده كنید و اونو بنویسد و بعد برای حالتهای مختلف تعمیمش بدید ! نه اینكه از همون اول برید سراغ مواردی كه شاید اصلا ربطی به پروژه نداره !!
در ساده ترین حالت می تونید پارامتر ها تونو بصورت دستی به سایت بفرستید و نتایجشو بگیرید و در صورت نیاز تجزیه اش (parse) بكنید و استفاده كنید . برای مثال واسه استفاده از سایت koders از لینك زیر می تونید استفاده كنید :
http://www.koders.com/default.aspx?s=YYY&btn=&la=Python&li=GPL
YYY : عبارت مورد نظر برای جستجو
Python : زبان مورد نظر
GPL : لایسنس انتخاب شده

حالا بجای این عبارت موارد خودتونو قرار بدید و صفحه رو از طریق برنامتون صفحه مورد نظر رو لود كنید و ...  ;)
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: Afshin_Zavar در 25 مهر 1386، 09:36 ق‌ظ
نقل‌قول
صفحه رو از طریق برنامتون صفحه مورد نظر رو لود كنید
بیاضی جان، لطف میکنی یه sample ساده طراحی کنی؟
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: Bayazee در 18 آبان 1386، 09:50 ب‌ظ
سلام
شرمنده متوجه نشدم .
خوب یک مثال بسیار ساده :

from urllib import urlopen
website = 'http://www.koders.com/default.aspx?s=%s&btn=&la=%s&li=%s'
toSearch = 'urlopen'
lang = 'python'
lic = 'GPL'
SURL = website%(toSearch, lang, lic)
webpage = urlopen(SURL)
data = webpage.read()
file('t.html','w').write(data)

که من نتیجه رو در یک فایل ذخیره کردم و در مراحل بعد روش کار می کنم . می شد همون لحظه و بدون ذخیره فایل هم اینکارو کرد . حالا باید از اطلاعات داخل فایل که حاصل جستجوی ما هست استفاده کنیم . اینم می تونه روش های مختلفی داشته باشه . مثلا اولین روش :

import re
data = file('t.html','r').read()

m = re.findall(r'class="results_header">(.*)</a>', data, re.IGNORECASE)
for i in m :
print i
print "=" * 15

خروجی :

bayazee@mbs:~/Desktop/temp$ python r.py
FileUtils.py
===============
test_urls.py
===============
NetTools.py
===============
__init__.py
===============
__init__.py
===============
__init__.py
===============
urllib.py
===============
....

همونطور که می بیند نام فایل هایی که مورد مورد نظر در اون پیدا شده رو چاپ می کنه . خیلی راحت می شه متن پیدا شده و سایر اطلاعات رو بیرون کشید . روش های زیاد دیگه ای هم می تونه باشه که مثلما برای یک برنامه کاربردی باید روش کار کرد .
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: Afshin_Zavar در 19 آبان 1386، 03:18 ب‌ظ
مرسی؛ کمک بزرگی کردی
عنوان: پاسخ به: طراحی بانک دریافت اطلاعات یک کتاب از بین سایتهای مختلف
ارسال شده توسط: Bayazee در 23 آبان 1386، 12:46 ق‌ظ
سلام
خواهش Ù…ÛŒ کنم . بازی مورد یا ایده Ùˆ  مشکلی بود مطرح کنید تا جایی Ú©Ù‡ از دستم بر بیاد کمکتون Ù…ÛŒ کنم .