PDA

View Full Version : سوال: نحوه ثبت نام در سایت با جاوا



M0TR!X
دوشنبه 15 تیر 1394, 12:44 عصر
سلام.

یه سایت رو در نظر بگیرید که یه سری مقادیر از ورودی میگیره مثل یوزرنیم پسورد و اینا بعد ثبت نام میکنه. حالا من میخوام یه برنامه با جاوا بنویسم که این مقادیر رو بدم بهش بعد اون وصل شه به سایت و مقادیر رو وارد کنه و ثبت نام صورت بگیره

کسی میتونه ی مثال بزنه؟مثلا چطوری مقدار یوزرنیم رو تو سایت تو بخش یوزر نیم وارد کنم؟دکمه ثبت نام چطوری فشرده میشه؟

[younes]
سه شنبه 16 تیر 1394, 17:30 عصر
درود

برای ثبت نام در یک سایت بهتره بدونید:


مقداری در مورد پروتکل http تحقیق کنید.
یه صفحه ثبت نام از یک سری تگ html تشکیل شده که شما فقط با تگ فرم و فرزنداش کار دارید.
هر تگ فرم ممکنه از یک یا بیشتر تگ input - radioButton-checkBox و غیره تشکیل شده که هر کدوم با یک مشخه name برای سرور قابل شناسایی اند.
وقتی کاربر فرمی رو پر میکنه و بعد دکمه سابمیت رو میزنه مرورگر میاد مقادیر را از ورودی ها میگیره و به صورت یک رشته name=value به سرور میفرسته.


خب حالا کاری که شما باید انجام بدهید که زیاد مشخص نیست(این که میخواهید کاربر در برنامه شما به سایتی بره بعد ثبت نام کنه که میتونید از webView استفاده کنید چون طبیعتا باید از صد امنیتی کپچا بگذرید) یا (این که میخواهید برنامه شما رباتی باشه که خودش به وب سایت مشخصی میره و ثبت نام میکنه که خیلی سادست شما یه ارتباط http یا https کانکشن با وبسایت مقصد باز میکنید و بعد name=value هاتون رو در اون مینویسید که در جاوا این کار به ساده گیه نوشتن در فایل یا نماش متن در خروجی استاندارده به هر حال شما برای ثبت نام نیاز به گذشتن از کپچا دارید)

موفق باشید.

M0TR!X
چهارشنبه 17 تیر 1394, 14:45 عصر
اطلاعاتی که دادی فوق العاده مفید بود مرسی.

برنامه ای که میخوام بنویسم اینطوریه که خودم 10-20 تا سرویس وبلاگ دهی جمع کردم مثل بلگفا و ... من میام تو برنامه یه سری مقادیر که موقع ثبت یه وبلاگ ازم میخواد رو وارد میکنم بعد برنامه باید اون مشخصاتی که من دادم رو توی 20 تا سرویس وبلاگ دهی ثبت کنه. یعنی مثلا من میزنم اسم وبلاگ فلان باشه یوزرنیم فلان.و .... اون میاد توی همه 20 تا سرویس اینکارو انمجام میده و 20 تا وبلاگ با این مشخصات میسازه واسم. حالا ب نظرت بهترین روش چه روشیه؟؟

[younes]
چهارشنبه 17 تیر 1394, 16:23 عصر
اگر بخواهید این کار را ربات براتون انجام بده که مطمعنا باید بتونه از صد امنیتی این وبلاگ ها بگذره. (کپچا رو حل کنه)

اما به عنوان یه راه حل میتونید یکبار در برنامتون این اطلاعات (ایمیل-یوزر نیم - پس ورد- و غیره) رو وارد کنید و بوسیله ی webview ی برنامه به صفحه ثبت نام ها برید و برنامه این فیلد ها رو پر کنه و شما کپچا رو حل کنید که این کار منطقی به نظر نمیاد و اگر آدرس ها براتون با ارزش نیست استفاده از مرورگر منطقی تره.

M0TR!X
پنج شنبه 18 تیر 1394, 00:17 صبح
سلام.

کپچا که هیچ وقت حل بشو نیست باید دستی وارد بشه اشکال نداره. ولی بحث اصلی اینکه اگه قرار باشه 20-30 بار این اطلاعات دستی وارد بشه خسته کننده اس. بخاطر همین میخوام برنامه یک بار مقادیر رو بگیره و وارد کنه حالا کپچا رو دستی وارد میکنم

amirali0079
جمعه 19 تیر 1394, 14:32 عصر
البته حل هم میشه فقط گاو نر میخواهد و مرد کهن !
http://www.captcha.ru/en/breakings/
این سه تا کپتچا شکسته شده هست که CMS های معروف استفاده میکردن !

[younes]
شنبه 20 تیر 1394, 13:05 عصر
البته حل هم میشه فقط گاو نر میخواهد و مرد کهن !
منم موافقم کار نشد نداره اما فکر نمیکنم ارزش وقت گذاشتن داشته باشه.

M0TR!X
شنبه 20 تیر 1394, 22:57 عصر
سلام. این برنامه رو برای خودم نمیخوام. کلا بحث کپچا رو بزاریم کنار. میتونید یه تیکه کد از خواندن تگ html برام بزارید؟

amirali0079
یک شنبه 21 تیر 1394, 01:36 صبح
یعنی گرفتن یه تیکه از سورس HTML یک سایت ؟
اگه منظورت اینه من این تکه کد رو از اینترنت پیدا کردم تست کردم رو بعضی سایت ها مثل yahoo کار نکرد ولی رو اکثر کار میکنه
package com.amalaf.geturl;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLConnection;

public class Main {

public static void main(String[] args) throws IOException {
URL yahoo = new URL("http://www.sadeco.ir/");
BufferedReader in = new BufferedReader(
new InputStreamReader(
yahoo.openStream()));

String inputLine;

while ((inputLine = in.readLine()) != null)
System.out.println(inputLine);

in.close();
}

}

M0TR!X
یک شنبه 21 تیر 1394, 16:54 عصر
سلام.

مرسی از کد. ولی منظورم این نبود که فقط صفحه رو بخونه. ببینید یه صفحه ثبت نام انلاین رو در نظر بگیرید که یه سری فیلد برای ثبت نام داره مثلا اسم فامیل و....

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

[younes]
یک شنبه 21 تیر 1394, 17:45 عصر
باید از webView استفاده کنید. (یه مقدار درمورد javafx مطالعه کنید.) یک منبع (http://www.java2s.com/Tutorials/Java/JavaFX/1510__JavaFX_WebView.htm)
webView قابلیت اجرای جاوااسکریپت داره پس میتونید از جاوا اسکریپت برای پر کردن مقادیر فرم استفاده کنید.
یا صفحه رو با روش قبل دریافت کنید و با یه پردازش متن ساده فرم ثبت نام پر کنید و دوباره با متد loadContent از کلاس WebEngine لودش کنید.

M0TR!X
یک شنبه 21 تیر 1394, 23:10 عصر
;2237453']درود

برای ثبت نام در یک سایت بهتره بدونید:



یه صفحه ثبت نام از یک سری تگ html تشکیل شده که شما فقط با تگ فرم و فرزنداش کار دارید.
هر تگ فرم ممکنه از یک یا بیشتر تگ input - radioButton-checkBox و غیره تشکیل شده که هر کدوم با یک مشخه name برای سرور قابل شناسایی اند.
وقتی کاربر فرمی رو پر میکنه و بعد دکمه سابمیت رو میزنه مرورگر میاد مقادیر را از ورودی ها میگیره و به صورت یک رشته name=value به سرور میفرسته.



. من دقیقا اینو میخوام name تگها رو بخونم و نسبت ب name شون اونها رو پر کنم. مثلا اگه username بود من بدونم که نام کاربری میخواد. یه مثال از این دارین؟



یا (این که میخواهید برنامه شما رباتی باشه که خودش به وب سایت مشخصی میره و ثبت نام میکنه که خیلی سادست شما یه ارتباط http یا https کانکشن با وبسایت مقصد باز میکنید و بعد name=value هاتون رو در اون مینویسید که در جاوا این کار به ساده گیه نوشتن در فایل یا نماش متن در خروجی استاندارده به هر حال شما برای ثبت نام نیاز به گذشتن از کپچا دارید)

موفق باشید.

اینم قراره مثل ربات کار کنه 50 تا صفحه میگیره با فیلدهای ثبت نامی یکسان.بعد اونها رو پر میکنه دکمه ثبت رو میزنه