PDA

View Full Version : سوال: دریافت و ارسال مقدار یک textbox از یک سایت به فرم



goodarziasl
چهارشنبه 31 خرداد 1396, 19:14 عصر
سلام
دوستان چطور میشه مقدار تکس باکس داخل یک سایت را به فرم خودم انتقال بدم یا برعکس

parvizwpf
چهارشنبه 31 خرداد 1396, 22:17 عصر
اگر به هیچ وجه امکان دسترسی به اون تکست برای شما میسر نیست مجبورید سورس اون صفحه وب رو بخونید و دنبال تکسته مورد نظر بگردید مثلا:
string html = new WebClient().DownloadString("http://twitter.com");

shahryari
پنج شنبه 01 تیر 1396, 09:49 صبح
سلام
دوستان چطور میشه مقدار تکس باکس داخل یک سایت را به فرم خودم انتقال بدم یا برعکس

یه کاری کن...
سایتو تو webBrowser لود کن و از متد getElement (https://msdn.microsoft.com/en-us/library/system.windows.forms.htmldocument.getelementbyid(v =vs.110).aspx) متنشو بگیر

goodarziasl
پنج شنبه 01 تیر 1396, 17:35 عصر
اگه بخوام با زدن دکمه مثلا send فرم خودم دکمه send سایت عملیات ارسال انجام بده باز از متدهای بالا استفاده کنم؟

parvizwpf
جمعه 02 تیر 1396, 12:12 عصر
ببینید شما دسترسی به جزییات صفحات بعنوان فقط خواندنی خواهید داشت اگه سایت برای خودتون هست
میتونید شبیه کار رو در کد خودتون اعمال کنید
کار اون دکمه در وب چی هست؟

goodarziasl
شنبه 03 تیر 1396, 11:02 صبح
ببینید شما دسترسی به جزییات صفحات بعنوان فقط خواندنی خواهید داشت اگه سایت برای خودتون هست
میتونید شبیه کار رو در کد خودتون اعمال کنید
کار اون دکمه در وب چی هست؟

فرض کنید یک سایت ثبت نام یک اداره دولتی که من از طریق فرم خودم دارم تکس باکس ها را پر میکنم و با زدن دکمه ثبت فرم خودم در اصل دکمه ثبت سایت را فعال میکنم

parvizwpf
یک شنبه 04 تیر 1396, 22:53 عصر
شما در واقع تا جایی که من میدونم نمیتونید رویدادی در صفحه ای که شما بهش دسترسی ندارید رو اجرا کنید. اگه سایت ماله خودتون بود میتونستید اینکار رو بکنید جون تمام کارهای و رویدادهای اون دکمه وب رو میدونستید. اما پشت اون کد دکمه کلی کار داره انجام میشه . البته من به قطعیت نمیگم شدنی نیست شاید راهی باشه فقط بتونید کلیک اون دکمه رو صدا کنید از برنامتون . اونوقت مشکل اینکه دیتای شبیه سازی فرموتن رو چجوری پاس بدید. البته تازه اگه اون فرم روی وب دیتای فرمش رو بصورت post بفرسته که دیگه سخت تره

samiasoft
دوشنبه 05 تیر 1396, 00:12 صبح
شما دوستان چرا مسائل رو سخت میکنید؟

یه وب بروزر بزارید داخل فرم....ادرس سایت ثبت نام رو لود کنید.....مقادیر تکست باکس فرم را با دستوری که فکر میکنیم بلدید به تکست باکس وب بروزر بفرستید برای تایید یا همون دکمه ارسال هم نام اون دکمه رو از داخل سورس سایت بدست بیارید و با دستور زیر روی اون کلیک کنید :

برای مثال فرض کنیم نامش کلیک باشه

WebBrowser1.Document.All().InvokeMember("click")

کد کامل رو سرچ کنید دقیق الان نتونستم بنویسم
var sendpost = webBrowser1.Document.GetElementsByTagName("input");foreach (HtmlElement input in sendpost)
{
if (input.GetAttribute("className") == "btn")
{
input.InvokeMember("click");
}
}

ژیار رحیمی
دوشنبه 05 تیر 1396, 00:59 صبح
دوست گرامی کاری که می خوای انجام بدی با کنترل webBrowser به دلیل امکانات محددوی که در اختیار برنامه نویس قرار میدهد قابل انجام نیست.برای انجام چنین کاری شما به داریور یه مرورگر نیاز دارید تا امکان پر کردن فیلد ها و submit کردن فرم تحت وب را داشته باشید.برای این کار من selenium webdriver را به شما پیشنهاد میکنم.در گوگل جستجو نمایید رفرنس ها رو به پروژه اضافه کنید و داکیومنت ان را مطالعه نمایید.
www.seleniumhq.org/projects/webdriver/