چگونه دریافت اطلاعات از سایت دیگر

باعرض سلام و خسته نباشید به شما دوستان و تبریک سال نو :rose:

دوستان من می خوام که از یک سایت اطلاعاتی رو دریافت کنم اما نمی دونم چطوری :-?

اول در مورد سایت بگم که:

1- باید به سایت با اطلاعات کاربری وارد شد.
2- باید به صفحه مورد نظر رجوع کرد.
3- در صفحه مورد نظر مواردی را که تمایل به نمایش داریم را انتخاب و بر روی دکمه " دریافت اطلاعات " کلیک کرد.
4- در صفحه جدیدی که باز می شود اطلاعات مورد نظر را مشاهده کرد.

این مراحلی هست که برای مشاهده اطلاعات باید رفت.

اما من می خوام کاری کنم تا من دیگه این همه راه رو نروم :green:

می خوام در localhost یا سایت خودم با یک کلیک اطلاعات رو دریافت کنم و مرتب ببینم.

در مورد مرتب سازی مشکلی نیست می تونم روش کار کنم.

اما اطلاعات رو چطوری دریافت کنم؟ :-?

یه مقدار جستجو کردم به fsockopen و CURL رسیدم. اما نمی دونم باید چطوری کار کنم.

مشکل اول من عبور از قسمت ورود هست.

اینم اضافه کنم که در صفحه مورد نظر 3 کادر وجود دارد.

1- نام کاربری
2- رمز عبور
3- جمع 2 عدد ( که به صورت عکس نیست )

باتشکر
 

benyamin_pc

Well-Known Member
اون سایتی که می خاین ازش اطلاعات بگیرین اگه ماله خودتون نیست باید یه ارسال اطلاعات خودش براش گذاشته باشه وگرنه نمیتونین ازش اطلاعات بگیرین
 
اگه برای خودم بود که زحمت نمی دادم.

من می خوام از سایت ارائه پنل پیامک که فعلا از طریق API نمیشه از وضعیت پیامک ها باخبر شد به کمک fsockopen یا CURL اطلاعت مورد نیازم رو ازش بکشم بیرون

امروز که داشتم سایت رو زیر و رو میکردم متوجه شدم که به غیر از مشکل کد امنیتی باید چند تگ input پنهان هستند.

و در پی جستجو های امروز متوجه شدم که با کمک CURL میشه کوکی از سایت خواند و به سایت معرفی کرد.

اما نتونستم کاری کنم. :sad:

اگه شما دوستان بتونید بهم بگین که من چطوری می تونم کارهای زیر رو انجام بدم ممنون میشم.

1- به کمک CURL محتوای صفحه ورود رو در بیارم. برای گرفتن مقادیر input های فرم
2- ارسال اطلاعات به سایت ( نام کاربری ، پسورد، کد امنیتی و مقادیر input ها )
3- کمک CURL ثبت کوکی در فایل برای دسترسی به بخشهای دیگر سایت که ورود کاربر رو کنترل می کنند. ( تو این سایت مثلا بخش ارسال پیامک )
4- ارسال اطلاعات مورد نظر برای دریافت اطلاعات مورد نیاز ( در اینجا لیست پیامک های دریافتی )

اگه نیاز به دادن آدرس سایت هست بهم بگین تا بذارم. ( چون الان باید برم سر فیم و بعدش بخوابم وقت مطالعه قوانین سایت رو ندارم :wink:. اگه خلافه بگین تا خصوصی برتون بفرستم. )

باتشکر
 
سلام دوستان

دوستان من یه مشکل کوچیک دارم که اگه بتونید کمک کنید عالی میشه :rose:

وقتی من صفحه ورود سایت رو با cURL باز می کنم هر دفعه یک session جدید برای کد امنیتی یا همون captcha ساخته میشه

متاسفانه کد امنیتی این سایت به صورت عکس نیست و متن هست.

من الان تمام موارد رو تونستم درست کنم. :green:

1- خودم وارد سایت شدم.
2- کوکی سایت رو کپی کردم.
3- گذاشتم تو سورس و به اطلاعاتم دسترسی پیدا کردم و استفاده کردم.

فقط الان مشکلم تو همین کد امنیتی هست. :wink:

کل اینترنت رو زیر و رو کردم فقط برای عکس بود. :-?

والا دیگه مغزم نمی کشه. :sad:

لطفا تو این مورد راهنماییم کنید.

اینم اضافه کنم که من نه قصد کپی کردن session دارم ( چون نمیشه ) و نه قصد دور زدن کد امنیتی ( چون اینم نمیشه )

1- می خوام کاری کنم که انگار صفحه رو باز کردم.
2- فیلدها رو پر کردم.
3- رو دکمه " ورود " کلیک کردم.

که بعد از ارسال اطلاعات کوکی رو ذخیره کنم و بعدش استفاده کنم. :oops:

باتشکر
 

farik

Well-Known Member
باسلام...دوست عزیز میشه بپرسم جطوری دقیقا کد امنیتش؟سوالاتش رو چند نمونه قرار بدین..باید بشه یک کاریش کرد...
 
باعرض سلام و خسته نباشید به شما دوستان عزیز

دوستان من نمونه کد صفحه رو قرار میدم.
فقط چند نکته رو باید بگم.

1- مقدار تگ __VIEWSTATE با هر بارگذاری صفحه تغییر میکند.
2- مقدار تگ __EVENTVALIDATION با هر بارگذاری صفحه تغییر میکند.
3- جمع دو عدد در صفحه هستند که کد امنیتی هست. که با هر بارگذاری صفحه تغییر می کند.

من چون باید برم بیرون وقت نکردم بیشتر روش کار کنم تا مقدار ها تغییر کنه. خودتون خیلی راحت می تونید یه حلقه بنویسید تا کار کنه. :green:


HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html dir="rtl" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>ورود</title>
</head>
<body>
<form name="form1" method="post" action="relogin.php" id="form1">
    <div>
        <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUJLTQ5MTkwMDA4D2QWAgIDD2QWAgIHDw8WAh4EVGV4dAUJMiArIDEzID0gZGQYAQUeX19Db250cm9sc1JlcXVpcmVQb3N0QmFja0tleV9fFgEFCUNoZWNrQm94MaNOOAkMG4LMUGNGPt9Caq0oyLff" />
    </div>
    
    <div>
        <span id="lblUpdate" style="color:#003399; font-family:tahoma; font-size:10pt; padding:5px; font-size:9pt; font-weight:bold; text-align:right; color:#FF0000;"></span>
        
        <table border="0" width="100%" id="table3" cellspacing="0" cellpadding="3">
            <tr>
                <td width="70"><span lang="fa">نام کاربري :</span></td>
                <td class="style12"><input name="username" type="text" id="username" /></td>
            </tr>
            <tr>
                <td width="70"><span lang="fa">کلمه عبور :</span></td>
                <td class="style12"><input name="Password" type="password" id="Password" /></td>
            </tr>
        </table>
    </div>
    
    <table border="0"  id="table1" cellspacing="0" cellpadding="0">
        <tr>
            <td><p style="width:75px"><span id="verifyLBL">2 + 13 = </span></p></td>
            <td><input name="VerifyCode" type="text" id="VerifyCode" style="width:95px;" /></td>
            <td>&nbsp;</td>
        </tr>
    </table>

    <table border="0" width="100%" id="table4" cellspacing="0" cellpadding="3">
        <tr>
            <td width="70">&nbsp;</td>
            <td><input id="CheckBox1" type="checkbox" name="CheckBox1" /><label for="CheckBox1">مرا به خاطر داشته باش</label></td>
        </tr>
        <tr>
            <td width="70">&nbsp;</td>
            <td><input type="submit" name="btnUpdate" value="ورود" id="btnUpdate" />&nbsp;</td>
        </tr>
    </table>

    <div>
        <input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWBgKk/pcjAq+m6rYIAtLF4JEPArLxt6wFAoLk17sJAvKdqKUM6cbUOPU0eo6Eh2zveK98y9bfbdY=" />
    </div>
</form>
</body>
</html>

باتشکر :rose:
 

farik

Well-Known Member
باسلام.
دوست عزیز اگه بخاین همون 2+13 رو بدین به سرور واقعا کاری نداره...یک نگاهی به تابع preg_match بندازین...با استفاده از اون راحت میتونین 2و13و علامت بینشون رو بدست بیارین...بعدش هم که یک switch case واسه +و/و*و- و یک تبدیل مقدار هم انجام باید بدین که رشته به عدد بدل بشه...
موفق باشید...
 
دوست عزیز من تمام کارها رو انجام دادم به این صورت که هم مقدار کد امنیتی و هم مقدار تو input دیگر را هم در می آورم

فقط مشکل در ارسال هست.

وقتی من اطلاعات رو ارسال می کنم با پیغام خطای " کد امنیتی وارده صحیح نیست " مواجعه میشوم.
 

جدیدترین ارسال ها

بالا