نمایش نتایج 1 تا 18 از 18

نام تاپیک: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

  1. #1

    Lightbulb راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    سلام
    برنامه ميخواستم بنويسيم كه از اين سايت http://www.gooshishop.com تمامي اطلاعات و مدل و قيمت رو بگيره و تو بانك ذخيره كنه و هروقت كه خواستم بهم نشون بده . يعني يه جورايي تحت دسكتاپ باشه بدون نياز به اينترنت
    مثلا در برنامه دستكتاپ فقط نام گوشي مدل گوشي و قيمت رو ذخيره كنه ) حالا اگر هم بشه با عكس . منظورم اينه خودش اين كاره كنه بصورت دستي تك تك نباشه .
    همچين چيزي هست يا نه ؟

    اين فيلدها را ذخيره كنه :
    نام گوشي samsung nokia sony و ...
    مدل 1280 , c7 و ...
    قيمت 12500 يا .....

    به نظر شما دوستان راه حل در اين خصوص چيه ؟ چطور ميشه اين رو پياده سازي كرد ؟

    تو عكس بيشتر متوجه ميشد

    ممنون ميشم راهنمايي لازم و نظرات و راه حل رو براي اين منظور مبذول بفرماين .
    تشكر از همه
    آخرین ویرایش به وسیله sajjad_india : سه شنبه 01 آذر 1390 در 11:58 صبح

  2. #2

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    سلام
    نرم افزارهایی برای دانلود کامل سایت های اینترنتی وجود دارند که می تونی همین سایت رو به طور کامل دانلود کنی و هر وقت و هر کجا که به مطالبش احتیاج داشتی ازش استفاده کنی.
    فکر نمی کنم استخراج این اطلاعاتی که شما گفتی از داخل یک سایت و به طور خودکار کار راحتی باشه.
    موفق باشید

  3. #3

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    درسته اون نرم افزارها تمامي اطلاعاتي رو كه فكر كنم بشه برداشت رو برميداره ولي فكر نكنم بانك سايت رو برداره !‌
    بهر حال نظرات دوستان و راه حل دوستان در اين مورد ميشه كمكي بكنه واسه همچين برنامه اي و اينكه تمايل دارم اين برنامه رو بنويسم يا با كمك هم بنويسيم . راهنمايي و نظرات و همچنين حتي يك راه حل ميتونه در اين برنامه كمك بسيار بزرگي بكنه .

  4. #4

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    كسي نيست ؟!

  5. #5
    کاربر دائمی آواتار joker_pok
    تاریخ عضویت
    بهمن 1389
    محل زندگی
    تبریز
    پست
    171

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    بیخیال فکر نکنم همچین چیزی رو بتونی به راحتی پیاده سازی کنی

    مگه اینکه اطلاعات سایت رو یه جوری بریزی تو یک فایل و برنامه اطلاعات رو از توی فایل بخونه خوندن فایل راحته اما چه جوری اطلاعات رو بتونی بریزی تو یه فایل txt میشه برنامه نویسی هوشمند و با الگوریتم های هوش مصنوعی که تا حالا من همچین چیزی ندیدم یا اینکه بتونی کد نویسی در سطح هک بلد باشی فکر کنم بری توی Ashiyane.org زود تر به جواب برسی باید بتونی از هک کردن استفاده کنی راه دیگه ای محاله داشته باشه

  6. #6

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    يادش بخير آشيانه .....

    ولي خواستم عين آدم اين كارو كنم ديگه نياز به آشيانه نيست كه . ميخوام بدونم اصولش چيه ؟ مراحل يه همچين كاري چيه ؟
    ممنون از شما راهنماييتون عالي بود يك چيز به انديشه اينجانب اضافه شد . حالا اجازه بديم اساتيد و دوستان عزيز هم بيان كمي نظر و راه حل بدن تا به نتيجه نزديك تر شيم .

    ممنون از شما باز هم دوسته گلم

  7. #7
    کاربر دائمی آواتار _behnam_
    تاریخ عضویت
    مهر 1389
    محل زندگی
    سونای ایران ( بوشهر )
    پست
    971

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    سلام!
    کار سختی نیست
    فقط یکم با ُتوابع Split, Mid , Instr آشنا باشید
    میتونید لینکهای مارک هارو از وب وبروزر یکی یکی در بیارید و بهد وارد آنها بشیدو مدل گوشی هارو با توابع بالا بکشید بیرون و توی دیتابیس ذخیره کنید

  8. #8

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    مشكل اينه كه يك صفحه نيست خيليه صفحاتش!!!
    الگوريتم و فلورچارتش به چه صورت ميشه ؟

  9. #9
    کاربر دائمی آواتار aleas2
    تاریخ عضویت
    اردیبهشت 1389
    محل زندگی
    بم
    پست
    903

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    دوست عزیز راه حل راحتی وجود نداره شما باید برنامه ای بنویسید که بطور مثال(یه بانک از قبل ساخته باشین شامل 3 ستون ستون اول نام گوشی و ستون دوم مدل و ستون سوم قیمت )
    برای صفحه اول نوکیا این صفحه رو باز کنه(البته برنامه رو میتونی اتوماتیک بسازی که نیاز به وارد کردن لینک نباشه خودش توسط توابع Split, Mid , Instr لینک صفحه مورد نظر برای هر مدل از گوشی رو پیدا کنه)
    http://www.gooshishop.com/ItemsList.aspx?BrandId=20
    بعد ستون اول نوکیا ذخیره کنه ستون دوم و سوم هم توسط توابع Split, Mid , Instr پیدا کنه ذخیره کنه تنها راه بدست اوردن اطلاعات اینه یعنی بار اول برنامه این مراحل رو انجام بده و اگر این صفحه وب شامل صفحات 2و3 و... هسته برنامه توسط توابع Split, Mid , Instr تشخیص بده صفحه بعد باز کنه همین مراحل دوباره رو اون صفحه انجام بده برای دفعات بد دگه اطلاعات از تو بانک بخونه

  10. #10
    کاربر دائمی آواتار _behnam_
    تاریخ عضویت
    مهر 1389
    محل زندگی
    سونای ایران ( بوشهر )
    پست
    971

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    0.شروع
    1. سایت رو باز کن
    2. لیننهای که مربوط به صفحات مدل های گوشی سایت رو جدا کن
    3.به لینک شماره X برو
    4.توی لینک مدل و قیمت گوشیهای موجود رو از سورس سایت بدست بیار
    5. X رو با 1 جمع کن
    6. اگر X از تعداد لینکها بیشتر بود به مرحله بعد برو در غیر این صورت برو به مرحله 3
    7.پایان

    این الگوریتم کلی هست البته خیلی هم ساده خودت میتونی از روی همین یک اگوریتم بهتر طراحی کنی و کارت رو انجام بدی



    موفق باشید

  11. #11
    کاربر دائمی آواتار just4froum
    تاریخ عضویت
    تیر 1390
    محل زندگی
    تهران
    پست
    695

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    كار ساده اي است ولي يكم ريسكش بالاست يعني اگه شما اين كارو بكني بعد از 3 ماه صاحب سايت قالب سايتشو تغيير بده يا توي html تغييراتي بده احتمالا برنامه ي شما بدرستي كار نخواهد كرد و تمامي تلاش شما بيهوده خواهد بود.

  12. #12

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    دقيقا !!!
    ماهم برنامه خودمون رو كمي تعقير ميديم و هماهنگ با سايت مورد نظر ميكنيم . (ميشه قابليت آپديت برنامه) البته واسه خودم ميخوام
    ميشه واسه شروع يه سورس كوچيك .و استارت رو بزنيد و بريم سراغش ؟
    من هميشه رو اين Instr اين چيزا مشكل داشتم

    يا علي واسه شروع يكي كه اولويت ميشه كسي كه ميگه برنامه راحتي يه سورس كوچك بزاره .
    تشكر از همه شما علاقه مندان و دوستان عزيز بخش وي بي 6

  13. #13
    کاربر دائمی آواتار kitcat_m18
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    اداره - پشت میز کامپیوتر
    پست
    488

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    به نظر من که شدنيه!
    شما بايد براي استخراج نام گوشي ها از اين تگ استفاده کنين:
    <a href="ItemsDetails.aspx?ItemId=2348" class='mst_ins'>نوکيا 101 دو سيم کارت</a>

    مشخصه که class='mst_ins' رو بايد به عنوان کلمه کليدي جستجو کنين.
    تا اينجا نام گوشي ها و مدل گوشي پيدا ميشه. البته نام گوشي رو بايد از تو رشته بکشي بيرون(با استفاده از InStr)
    عاقلانه ترين راه اينه که به جاي جدا کردن نام گوشي موقع سلکت زدن تو بانک نام گوشي رو تو رشته سلکت بزني هر جا که نتيجه مورد نظر شما رو داشت نشون بده.

    حالا شما سه تا پارامتر رو با هم مي خواي يعني نام، مدل و قيمت.
    مي تونم بگم بعد از تگ بالا اين تگ رو براي قيمت پيدا کن
    <a href='ItemsGuarantees.aspx?ItemId=2348&GuaranteeId  =1158' class='mst_igl'><span >اصلي نوکيا&nbsp;530,000 ریال</span>

    اما اگه يکي از اين تگها اين وسط پيدا نشه اونوقت چي؟؟؟ همه چي به هم ميريزه!

    بهترين راه اينه که به دنبال اين تگ بگردي:

    <td style='width:33%' class='ItemStyle' align='right' onmouseover="hI(this)" onmouseout="oI(this)" ><a href="ItemsDetails.aspx?ItemId=2348" style="float: right"><img src='LoadPicture.aspx?PictureId=8063&typ=1' WIDTH='73px' HEIGHT='90px' Class='PS'></img></a><div class='mst_ins'><a href="ItemsDetails.aspx?ItemId=2348" class='mst_ins'>نوکيا 101 دو سيم کارت</a><br/><a href="Compare.aspx?ItemId=2348" class='LS'>[مقایسه]</a></div><a href='BuyBasket.aspx?GuaranteeId=1158' class='LS'><img src='images/AddToBasket.gif' class='NS' title='اضافه به سبد'></a>&nbsp;<a href='ItemsGuarantees.aspx?ItemId=2348&GuaranteeId =1158' class='mst_igl'><span >اصلي نوکيا&nbsp;530,000 ریال</span></a><br/></td>

    اگه يه کمي HTML بلد باشي متوجه ميشي که اين سايت براي ليست کردن محصولات از Table استفاده کرده و هر محصول در يک تگ TD قرار داره

    شما اول با استفاده از افعال با قاعده اين تگ ها رو پيدا مي کني بعد با کلاس هايي که گفتم و تابع INSTR چيزايي که احتياج داري رو به راحتي استخراج مي کني.

    موفق باشي

  14. #14

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    واي ترس برم داشته ! !‌ !
    هم اكنون نياز مند ياري سبزتان هستم ! بگذريم .

    حالا من به نظر شما واسه اين كار آنلاين كار كنم بهتر نيست ؟ يعني از webbrowser ؟
    مثلا ااگر بخوام فقط جدول گوشي ها رو webBrowser نشون بدم همچين امكاني داره ؟
    يهني كل صفحه نباشه فقط ليست مثلا گوشي هاي نوكيا رو فقط تو webbrowser نشونم بده ؟!

    تشكر ويژه از همه شما دوستان عزيز

  15. #15

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    منظورم اينه وقتي كمبو باكس مدل نوكيا يا سامسونگ رو باز ميكنم قسمت قرمز در عكس فقط تو WebBrowser1 نشون داده بشه !!! ميشه همچين چيزي ؟



  16. #16
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    MsgBox barnamenevis.org
    پست
    540

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    نقل قول نوشته شده توسط sajjad_india مشاهده تاپیک
    منظورم اينه وقتي كمبو باكس مدل نوكيا يا سامسونگ رو باز ميكنم قسمت قرمز در عكس فقط تو WebBrowser1 نشون داده بشه !!! ميشه همچين چيزي ؟


    کدش میشه این
    Private Sub Command1_Click()
    WebBrowser1.Navigate "http://www.gooshishop.com/"
    End Sub

    Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
    If WebBrowser1 <> pDisp Then Exit Sub

    Dim htmlData As String, i As Long, j As Long
    htmlData = WebBrowser1.Document.documentElement.OuterHTMl
    i = InStr(1, htmlData, "<tr id=area2>", vbTextCompare)
    If i = 0 Then MsgBox "error": Exit Sub
    j = InStr(1, htmlData, "</SPAN></TD></TR></TBODY></TABLE></TD></TR>", vbTextCompare)
    htmlData = Mid$(htmlData, i, j - i + 12)
    WebBrowser1.Document.body.innerHTMl = htmlData
    End Sub



    آپدیت کد فراموش نشه ... مثلا اگر سایت اسم area2 رو بکنه area3 دیگه این کد کار نمیکنه

    اول کار یه error میده که مهم نیست


  17. #17

    نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي

    كاشكي خط بخ خط برنامت رو توضيح ميدادي

  18. #18
    کاربر دائمی
    تاریخ عضویت
    مرداد 1387
    محل زندگی
    MsgBox barnamenevis.org
    پست
    540

    Thumbs up نقل قول: راهنمايي و درخواست راه حل در مورد گرفتن اطلاعات و ريختن در برنامه شخصي


    توضیح کلی اینکه source کل سایت رو میگیریم (تو explorer ویندوز این قسمته View>source)

    کدش میشه این

    Private Sub Command1_Click()
    WebBrowser1.Navigate "http://www.gooshishop.com/"
    End Sub

    Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
    If WebBrowser1 <> pDisp Then Exit Sub

    Dim htmlData As String, i As Long, j As Long
    htmlData = WebBrowser1.Document.documentElement.OuterHTMl


    بعدش دنبال قسمت گوشی های موبایل میگردیم که درحال حاضر شامل یک جدول میشه. کد Html مربوط به این جدول با <tr> نشان داده میشه و اسم اون جدول area2 هست

    i = InStr(1, htmlData, "<tr id=area2>", vbTextCompare)


    این جدول یه جایی تموم میشه دیگه ... انتهای جدول رو هم می یابیم

    j = InStr(1, htmlData, "</SPAN></TD></TR></TBODY></TABLE></TD></TR>", vbTextCompare)


    در آخر جدول مربوطه میشه این

    htmlData = Mid$(htmlData, i, j - i + 12) 


    و source رو تغییر میدیم


    WebBrowser1.Document.body.innerHTMl = htmlData


    تمام شد.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •