In this Article
Selenium بذاتِ خود ویب آٹومیشن کے لیے نہایت مفید ہے، لیکن اسے پراکسی کے ساتھ استعمال کرنے سے رازداری بہتر ہوتی ہے، کنکشن زیادہ مستحکم رہتا ہے اور مواد تک رسائی کی رکاوٹیں کم ہو جاتی ہیں۔ سادہ الفاظ میں، یہ Jason Huggins کا بنایا ہوا اوپن سورس ٹول ہے، جسے ویب ایپلیکیشنز کو خودکار بنانے اور ٹیسٹ کرنے کے لیے استعمال کیا جاتا ہے۔ اس میں Selenium IDE، Grid، Standalone Server، اور WebDriver جیسے ماڈیولز شامل ہیں۔
اس گائیڈ میں ہم ویب اسکریپنگ کے لیے Python میں پراکسی کے ساتھ Selenium ترتیب دینے کے بنیادی مراحل بیان کریں گے۔
شروع کرنا
سب سے پہلے، یقینی بنائیں کہ آپ کے پاس Python اور pip (Python پیکیج مینیجر) انسٹال ہے۔ اگر نہیں، تو سرکاری ویب سائٹ سے Python ڈاؤن لوڈ کریں، ڈاؤن لوڈ کی گئی .pkg فائل کھولیں اور ہدایات پر عمل کریں۔ آئیے بنیادی مراحل کو دیکھیں:
1. اپنا Terminal یا Command Prompt کھولیں۔ اگر آپ Mac پر ہیں، تو Dock میں Launchpad آئیکن پر کلک کریں، سرچ فیلڈ میں Terminal ٹائپ کریں، پھر Terminal پر کلک کریں۔ اگر آپ Windows استعمال کر رہے ہیں تو Run ونڈو میں cmd لکھیں۔ اس سے Command Prompt یا PowerShell ٹرمینل کھل جائے گا۔
2. اپنے ٹرمینل میں یہ ٹائپ کریں:
python --version
اگر آپ Python 3 استعمال کر رہے ہیں تو python کے بعد صرف 3 شامل کریں۔ یہی اصول دوسری کمانڈز پر بھی لاگو ہو سکتا ہے:
python3 --version
pip عام طور پر Python 3.4+ کے ساتھ خود بخود انسٹال ہو جاتا ہے۔ تاہم، یہ جانچ لینا بہتر ہے کہ pip انسٹال ہے یا نہیں۔ یہ کمانڈ ٹائپ کریں:
pip --version
pip3 --version
3۔ pip استعمال کر کے Selenium پیکیج انسٹال کریں۔:
pip install selenium
اگر آپ Python 3 استعمال کر رہے ہیں تو pip3 استعمال کریں، تاکہ پیکیج Python 3 کے لیے انسٹال ہو:
pip3 install selenium
4. چیک کریں کہ آیا انسٹالیشن مکمل ہو گئی ہے۔
انسٹالیشن کے بعد، درج ذیل کمانڈ چلا کر تصدیق کریں کہ Selenium انسٹال ہو چکا ہے:
pip show selenium
Selenium کے لیے ویب ڈرائیور کا استعمال
Selenium کو Chrome، Firefox اور دوسرے براؤزرز کے ساتھ کام کرنے کے لیے ایک ویب ڈرائیور درکار ہوتا ہے۔ آپ کو مناسب ڈرائیور ڈاؤن لوڈ کرنا ہوگا اور یہ یقینی بنانا ہوگا کہ یہ آپ کے سسٹم کے PATH میں دستیاب ہے۔ ہم Chrome کے ساتھ کام کریں گے، جو بیشتر آٹومیشن پروجیکٹس میں استعمال ہوتا ہے۔
1. سرکاری ChromeDriver ڈاؤن لوڈز صفحہ پر جائیں:
https://developer.chrome.com/docs/chromedriver/downloads
2. اپنے Chrome ورژن سے مطابقت رکھنے والا لنک تلاش کریں اور macOS کے لیے ChromeDriver ڈاؤن لوڈ کریں۔
ڈاؤن لوڈ کی گئی فائل زپ فارمیٹ میں ہو گی۔ اسے نکالنے کے لیے اس پر ڈبل کلک کریں، اور آپ کو chromedriver قابلِ عمل فائل مل جائے گی
آسان رسائی کے لیے، chromedriver فائل کو ایسی ڈائریکٹری میں منتقل کریں جو آپ کے سسٹم کے PATH میں شامل ہو۔ عام ڈائریکٹریاں یہ ہیں: /usr/local/bin یا /usr/bin. یہ کمانڈ استعمال کریں:
sudo mv ~/Downloads/chromedriver /usr/local/bin/
*** اگر آپ کو “ایسی کوئی فائل یا ڈائریکٹری نہیں” کی خرابی نظر آئے تو عموماً اس کا مطلب ہے کہ کمانڈ میں فائل کا راستہ غلط ہے یا فائل دی گئی جگہ پر موجود نہیں ہے۔ یقینی بنائیں کہ آپ اسی ڈائریکٹری میں ہیں جہاں chromedriver فائل موجود ہے اور فائل کے نام میں کوئی ایکسٹینشن یا ٹائپو شامل نہیں۔
جب آپ sudo کے ساتھ mv کمانڈ استعمال کر کے فائلوں کو ایسی ڈائریکٹریوں میں منتقل کرتے ہیں جیسے /usr/local/bin، macOS آپ سے اپنا پاس ورڈ درج کرنے کو کہے گا۔ یہ آپ کے صارف اکاؤنٹ کا پاس ورڈ ہے۔ اسے ٹائپ کریں اور انٹر دبائیں۔ ذہن میں رکھیں کہ آپ کے ٹائپ کرتے وقت آپ کا پاس ورڈ اسکرین پر ظاہر نہیں ہوگا (کوئی حروف یا علامت ظاہر نہیں ہوگی)۔
یہ چیک کرنے کے لیے کہ آیا ChromeDriver درست طریقے سے انسٹال ہوا ہے، ٹرمینل میں درج ذیل کمانڈ ٹائپ کریں:
chromedriver --version/
ایک بنیادی Python اسکرپٹ بنانا
اس کے بعد، کوئی ٹیکسٹ ایڈیٹر استعمال کریں، مثلاً VS Code، یا IDE میں یہ نام دے کر نئی فائل بنائیں selenium_test.py
بنیادی Python اسکرپٹ بنانے کے لیے ہمیں ویب ڈرائیور مینیجر ماڈیول انسٹال کرنا ہو گا۔
- ہم pip کے ذریعے پیکیج انسٹال کر سکتے ہیں۔ ٹرمینل میں درج ذیل کمانڈ چلائیں:
pip install webdriver-manager/
pip install selenium webdriver-manager/
مندرجہ بالا کمانڈ کو چلانے کے بعد، آپ کی اسکرپٹ کو توقع کے مطابق کام کرنا چاہیے:
# pip install selenium webdriver-manager
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options
# set Chrome options to run in headless mode
options = Options()
options.add_argument("--headless=new")
# initialize Chrome driver
driver = webdriver.Chrome(
service=Service(ChromeDriverManager().install()),
options=options
)
# navigate to the target webpage
driver.get("https://httpbin.io/ip")
# print the HTML of the target webpage
print(driver.page_source)
# release the resources and close the browser
driver.quit()/
آپ یہ نتیجہ دیکھیں گے:
Selenium میں ایک مفت پراکسی ترتیب دینا
اس حصے میں، آپ Python کے ذریعے Selenium میں پراکسی ترتیب دینا اور مفت پراکسی آزمانا سیکھیں گے۔ اس ویب سائٹ پر جائیں: https://free-proxy-list.net/ اور اپنے ٹیسٹ کے لیے ایک مفت پراکسی کا انتخاب کریں۔ اسکرپٹ میں، آپ کو پراکسی ایڈریس اور پورٹ کی وضاحت کرنی ہوگی۔ مثال کے طور پر، آئیے اس مفت پراکسی کا انتخاب کریں:
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
# define the proxy address and port
proxy = "194.5.25.34:443"
# set Chrome options to run in headless mode using a proxy
options = Options()
options.add_argument("--headless=new")
options.add_argument(f"--proxy-server={proxy}")
# initialize Chrome driver
driver = webdriver.Chrome(
service=Service(ChromeDriverManager().install()),
options=options
)
# navigate to the target webpage
driver.get("https://httpbin.io/ip")
# print the body content of the target webpage
print(driver.find_element(By.TAG_NAME, "body").text)
# release the resources and close the browser
driver.quit()/
ٹرمینل میں، آپ کو درج ذیل جواب ملے گا:
{
“اصل”: “194.5.25.34:443”
}
اس کا مطلب ہے کہ Selenium پراکسی سرور کے ذریعے صفحات تک رسائی حاصل کر رہا ہے۔ تاہم، محتاط رہیں کیونکہ مفت پراکسی سست ہوسکتی ہیں اور آپ کا ڈیٹا بیچ سکتی ہیں۔
Selenium Wire
Selenium Wire، Selenium کی ایک طاقتور توسیع ہے جو آپ کو نیٹ ورک ٹریفک کو پکڑنے اور اس کا تجزیہ کرنے دیتی ہے۔ HTTP درخواستوں اور جوابات کا جائزہ لے کر آپ بہتر طور پر سمجھ سکتے ہیں کہ ویب ایپلیکیشن اپنے سرور کے ساتھ کیسے تعامل کرتی ہے۔ Chrome ڈرائیور صارف نام اور پاس ورڈ کی توثیق خود بخود انجام نہیں دیتا، اس لیے آپ کو Selenium Wire جیسے تیسرے فریق کے پلگ ان کی ضرورت ہوتی ہے۔
Selenium Wire انسٹال کرنے کے لیے، اس کمانڈ کو اپنے ٹرمینل میں چلائیں:
pip install blinker==1.7.0 selenium-wire/
pip3 install blinker==1.7.0 selenium-wire/
DataImpulse Selenium میں پراکسیز
اب DataImpulse پراکسیز استعمال کرنے کا وقت ہے۔ سب کچھ انسٹال ہو چکا ہے، اس لیے ہم پراکسی کی توثیق کے مرحلے پر جا سکتے ہیں۔ اس مرحلے کے لیے، DataImpulse ڈیش بورڈ میں اپنے منتخب کردہ پلان کے حصے سے لاگ اِن، پاس ورڈ، پتہ اور پورٹ محفوظ کر لیں۔ ہم ایک رہائشی پراکسی استعمال کرنے جا رہے ہیں۔
اب اسکرپٹ کی طرف چلتے ہیں:
from seleniumwire import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.by import By
# configure the proxy
proxy_username = ""
proxy_password = ""
proxy_address = "gw.dataimpulse.com"
proxy_port = "823"
# formulate the proxy url with authentication
proxy_url = f"http://{proxy_username}:{proxy_password}@{proxy_address}:{proxy_port}"
# set selenium-wire options to use the proxy
seleniumwire_options = {
"proxy": {
"http": proxy_url,
"https": proxy_url
},
}
# set Chrome options to run in headless mode
options = Options()
options.add_argument("--headless=new")
# initialize the Chrome driver with service, selenium-wire options, and chrome options
driver = webdriver.Chrome(
service=Service(ChromeDriverManager().install()),
seleniumwire_options=seleniumwire_options,
options=options
)
# navigate to the target webpage
driver.get("https://httpbin.io/ip")
# print the body content of the target webpage
print(driver.find_element(By.TAG_NAME, "body").text)
# release the resources and close the browser
driver.quit()/
VS Code میں، یہ اس طرح نظر آئے گا:
نتیجے میں آپ کو اپنی ‘اصل’ کے ساتھ جواب ملے گا۔ اس کا مطلب ہے کہ توثیق کامیابی سے مکمل ہو گئی ہے۔
مشورے
- صرف سرکاری ویب سائٹس پر جائیں۔ – تمام ضروری پروگرام صرف قابلِ اعتماد سرکاری ویب سائٹس سے ڈاؤن لوڈ کریں۔
- مطابقت کی تصدیق کریں۔ – دو بار چیک کریں کہ Selenium، ChromeDriver، اور آپ کے براؤزر کے ورژن ایک دوسرے کے ساتھ مطابقت رکھتے ہیں۔
- باقاعدگی سے اپ ڈیٹ کریں۔ – تازہ ترین خصوصیات سے فائدہ اٹھانے کے لیے Selenium، ChromeDriver اور دوسرے ٹولز کو باقاعدگی سے اپ ڈیٹ کریں۔
- لاگ ان معلومات کو محفوظ طریقے سے منظم کریں۔ – اپنی توثیق کی تفصیلات کو محفوظ طریقے سے محفوظ اور منظم کریں۔
- ورچوئل ماحول استعمال کریں۔ – انحصارات کو منظم رکھنے اور پیکیج کے تنازعات سے بچنے کے لیے ورچوئل ماحول بنائیں۔
- خرابیوں سے نمٹنا – پراکسی استعمال کرتے وقت یا ویب عناصر کے ساتھ کام کرتے وقت ممکنہ مسائل سے نمٹنے کے لیے اپنے اسکرپٹس میں ایرر ہینڈلنگ میکانزم شامل کریں۔
نتیجہ
اگر آپ Selenium سیٹ اپ کرنے کا سوچ رہے ہیں تو اسے ضرور آزمائیں۔ Selenium کے ساتھ پراکسی استعمال کرنا اضافی کنٹرول اور لچک فراہم کرتا ہے۔ تمام پیکیجز درست طریقے سے انسٹال کرنے کے لیے ان ہدایات اور مشوروں پر عمل کریں۔ یاد رکھیں کہ بہتر رفتار، سیکیورٹی اور استحکام کے لیے مفت پراکسیز کے بجائے قابل اعتماد پراکسیز کا انتخاب بہتر ہے۔









