ম্যানুয়ালি Gmail অ্যাকাউন্ট তৈরি করা ক্লান্তিকর হতে পারে, বিশেষ করে যদি আপনার পরীক্ষার বা অন্যান্য উদ্দেশ্যে একাধিক অ্যাকাউন্টের প্রয়োজন হয়। এই টিউটোরিয়ালে, আপনি শিখবেন কিভাবে পাইথন এবং সেলেনিয়াম ব্যবহার করে জিমেইল অ্যাকাউন্ট রেজিস্ট্রেশন প্রক্রিয়া স্বয়ংক্রিয় করতে হয়। আমরা এছাড়াও ব্যবহার করব faker
এলোমেলো ব্যবহারকারীর ডেটা তৈরি করতে লাইব্রেরি এবং random
পাসওয়ার্ড তৈরির জন্য।
পূর্বশর্ত
আমরা শুরু করার আগে, নিশ্চিত করুন যে আপনি নিম্নলিখিত ইনস্টল করেছেন:
- Python 3.x
- সেলেনিয়াম
- ক্রোম ওয়েব ড্রাইভার
- জাল
আপনি পিপ ব্যবহার করে সেলেনিয়াম এবং ফেকার ইনস্টল করতে পারেন:
pip install selenium faker
থেকে Chrome WebDriver ডাউনলোড করুন এখানে এবং নিশ্চিত করুন যে এটি আপনার PATH-এ আছে।
স্ক্রিপ্ট ওভারভিউ
স্ক্রিপ্ট হবে:
- এলোমেলো প্রথম নাম, পদবি, ব্যবহারকারীর নাম এবং পাসওয়ার্ড তৈরি করুন।
- সেলেনিয়াম ব্যবহার করে জিমেইল সাইনআপ পৃষ্ঠা খুলুন।
- তৈরি করা ডেটা দিয়ে সাইনআপ ফর্মটি পূরণ করুন।
- ফর্ম জমা দিন।
ধাপ 1: লাইব্রেরি আমদানি করুন এবং ফেকার শুরু করুন
প্রথমত, আমরা প্রয়োজনীয় লাইব্রেরি আমদানি করব এবং শুরু করব Faker
:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from faker import Faker
import random
import string
import time
# Initialize Faker
fake = Faker()
ধাপ 2: র্যান্ডম ডেটা জেনারেট করুন
এর পরে, আমরা একটি র্যান্ডম পাসওয়ার্ড তৈরি করতে এবং র্যান্ডম ব্যবহারকারীর ডেটা তৈরি করতে একটি ফাংশন তৈরি করব:
# Function to generate a random password
def generate_password(length=12):
characters = string.ascii_letters + string.digits + string.punctuation
password = ''.join(random.choice(characters) for i in range(length))
return password
# Generate random user data
first_name = fake.first_name()
last_name = fake.last_name()
username = first_name.lower() + last_name.lower() + str(random.randint(1000, 9999))
password = generate_password()
ধাপ 3: সেলেনিয়াম ওয়েবড্রাইভার শুরু করুন
Chrome WebDriver আরম্ভ করুন এবং Gmail সাইনআপ পৃষ্ঠাতে নেভিগেট করুন:
# Initialize Chrome WebDriver
driver = webdriver.Chrome()
# Open Gmail signup page
driver.get("https://accounts.google.com/signup")
ধাপ 4: সাইন আপ ফর্মটি পূরণ করুন
পৃষ্ঠাটি লোড হওয়ার জন্য অপেক্ষা করুন, ফর্ম ক্ষেত্রগুলি সনাক্ত করুন এবং উত্পন্ন ডেটা দিয়ে সেগুলি পূরণ করুন:
# Wait for the page to load and locate the form fields
wait = WebDriverWait(driver, 10)
first_name_field = wait.until(EC.presence_of_element_located((By.ID, "firstName")))
last_name_field = driver.find_element(By.ID, "lastName")
username_field = driver.find_element(By.ID, "username")
password_field = driver.find_element(By.NAME, "Passwd")
confirm_password_field = driver.find_element(By.NAME, "ConfirmPasswd")
# Fill out the form fields
first_name_field.send_keys(first_name)
last_name_field.send_keys(last_name)
username_field.send_keys(username)
password_field.send_keys(password)
confirm_password_field.send_keys(password)
ধাপ 5: ফর্ম জমা দিন
ফর্মটি জমা দিন এবং পরবর্তী পৃষ্ঠাটি লোড করার অনুমতি দিতে বিলম্ব যোগ করুন:
# Submit the form
next_button = driver.find_element(By.XPATH, '//*[@id="accountDetailsNext"]/div/button')
next_button.click()
# Add a delay to allow the next page to load (you may need to adjust the sleep time)
time.sleep(5)
ধাপ 6: অতিরিক্ত পদক্ষেপগুলি পরিচালনা করুন
Google-এর সাইন আপ প্রক্রিয়ার উপর নির্ভর করে, আপনাকে ফোন যাচাইকরণ, পুনরুদ্ধার ইমেল বা ক্যাপচা-এর মতো অতিরিক্ত পদক্ষেপগুলি পরিচালনা করতে হতে পারে৷ এই অংশটি পরিবর্তিত হবে এবং আরও উন্নত হ্যান্ডলিং প্রয়োজন হতে পারে।
ধাপ 7: ব্রাউজারটি বন্ধ করুন
প্রক্রিয়া সম্পূর্ণ হলে ব্রাউজার বন্ধ করুন:
# Close the browser after the process is complete
driver.quit()
# Output the generated data
print(f"First Name: {first_name}")
print(f"Last Name: {last_name}")
print(f"Username: {username}")
print(f"Password: {password}")
সম্পূর্ণ স্ক্রিপ্ট
এখানে সমস্ত পদক্ষেপের সমন্বয়ে সম্পূর্ণ স্ক্রিপ্ট রয়েছে:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from faker import Faker
import random
import string
import time
# Initialize Faker
fake = Faker()
# Function to generate a random password
def generate_password(length=12):
characters = string.ascii_letters + string.digits + string.punctuation
password = ''.join(random.choice(characters) for i in range(length))
return password
# Generate random user data
first_name = fake.first_name()
last_name = fake.last_name()
username = first_name.lower() + last_name.lower() + str(random.randint(1000, 9999))
password = generate_password()
# Initialize Chrome WebDriver
driver = webdriver.Chrome()
# Open Gmail signup page
driver.get("https://accounts.google.com/signup")
# Wait for the page to load and locate the form fields
wait = WebDriverWait(driver, 10)
first_name_field = wait.until(EC.presence_of_element_located((By.ID, "firstName")))
last_name_field = driver.find_element(By.ID, "lastName")
username_field = driver.find_element(By.ID, "username")
password_field = driver.find_element(By.NAME, "Passwd")
confirm_password_field = driver.find_element(By.NAME, "ConfirmPasswd")
# Fill out the form fields
first_name_field.send_keys(first_name)
last_name_field.send_keys(last_name)
username_field.send_keys(username)
password_field.send_keys(password)
confirm_password_field.send_keys(password)
# Submit the form
next_button = driver.find_element(By.XPATH, '//*[@id="accountDetailsNext"]/div/button')
next_button.click()
# Add a delay to allow the next page to load (you may need to adjust the sleep time)
time.sleep(5)
# Close the browser after the process is complete
driver.quit()
# Output the generated data
print(f"First Name: {first_name}")
print(f"Last Name: {last_name}")
print(f"Username: {username}")
print(f"Password: {password}")
উপসংহার
আপনি পাইথন এবং সেলেনিয়াম ব্যবহার করে জিমেইল অ্যাকাউন্ট রেজিস্ট্রেশন প্রক্রিয়া সফলভাবে স্বয়ংক্রিয় করেছেন। এই স্ক্রিপ্টটি এলোমেলো ব্যবহারকারীর ডেটা তৈরি করে এবং স্বয়ংক্রিয়ভাবে ফর্মটি পূরণ করে। এই স্ক্রিপ্টটি দায়িত্বের সাথে ব্যবহার করতে মনে রাখবেন এবং স্বয়ংক্রিয় অ্যাকাউন্ট তৈরির আইনি এবং নৈতিক প্রভাব সম্পর্কে সচেতন থাকুন।