സെലിനിയം സി‌എസ്‌എസ് സെലക്ടർമാർ ഉദാഹരണങ്ങൾ

എക്സ്പാത്തിനേക്കാൾ വേഗതയേറിയതും കൂടുതൽ വായിക്കാവുന്നതുമായതിനാൽ സി‌എസ്‌എസ് സെലക്ടർമാർ ഘടകങ്ങൾ കണ്ടെത്തുന്നത് ഇഷ്ടപ്പെടുന്ന മാർഗമാണ്.

സി‌എസ്‌എസ് സെലക്ടറുകൾ ഉപയോഗിച്ച് സെലിനിയത്തിലെ വെബ് ഘടകങ്ങൾ എങ്ങനെ കണ്ടെത്താമെന്നതിന്റെ ഉദാഹരണങ്ങൾ ഈ ട്യൂട്ടോറിയൽ നൽകുന്നു.



ആട്രിബ്യൂട്ട് പ്രകാരം CSS സെലക്ടർമാർ

ഇനിപ്പറയുന്ന ആട്രിബ്യൂട്ടുകൾ [ഐഡി, ക്ലാസ്, പേര്, മൂല്യം] ഉള്ള ഒരു ടാഗ് ഞങ്ങളുടെ കൈവശമുണ്ടെന്ന് കരുതുക.


ആട്രിബ്യൂട്ട് ഉപയോഗിച്ച് ഘടകങ്ങൾ കണ്ടെത്താനുള്ള പൊതുവായ മാർഗ്ഗം:

css = element_name[='']

ഉദാഹരണം:


WebElement firstName = driver.findElement(By.cssSelector('input[name='first_name']'));

ഐഡി ആട്രിബ്യൂട്ട്

CSS ൽ, നമുക്ക് # ഉപയോഗിക്കാം id തിരഞ്ഞെടുക്കുന്നതിനുള്ള നൊട്ടേഷൻ ഒരു ഘടകത്തിന്റെ ആട്രിബ്യൂട്ട്:

ഉദാഹരണം:

driver.findElement(By.cssSelector('input#firstname')); //or driver.findElement(By.cssSelector('#firstname'));

ക്ലാസ് ആട്രിബ്യൂട്ട്

ഘടകങ്ങൾ | | + + | ഉപയോഗിച്ച് കണ്ടെത്തുന്നതിന് സമാന തത്ത്വം ഉപയോഗിക്കാം ആട്രിബ്യൂട്ട്.

ഞങ്ങൾ class ഉപയോഗിക്കുന്നു നൊട്ടേഷൻ.


.കുറിപ്പ്:ഉപയോഗിക്കുമ്പോൾ കൂടുതൽ ശ്രദ്ധിക്കുക . ഒരേ ക്ലാസ് ആട്രിബ്യൂട്ട് ഉപയോഗിച്ച് HTML ഉറവിടത്തിൽ നിരവധി വെബ് ഘടകങ്ങൾ ഉണ്ടാകാം.

ഒന്നിലധികം ആട്രിബ്യൂട്ടുകൾ

ചില സമയങ്ങളിൽ ശരിയായ ഘടകം കണ്ടെത്തുന്നതിന് തിരഞ്ഞെടുക്കൽ മാനദണ്ഡങ്ങൾ ഉപയോഗിച്ച് കൂടുതൽ വ്യക്തമാക്കേണ്ടതുണ്ട്.

driver.findElement(By.cssSelector('input.myForm')); //or driver.findElement(By.cssSelector('.myForm'));

അജാക്സ് കോളിനെ ആശ്രയിച്ച് ഡിസ്പ്ലേയുടെ മൂല്യം “ഒന്നുമില്ല” അല്ലെങ്കിൽ “തടയുക” ആകാം. ഈ സാഹചര്യത്തിൽ, ക്ലാസും ശൈലിയും അനുസരിച്ച് ഞങ്ങൾ ഘടകം കണ്ടെത്തേണ്ടതുണ്ട്.

ഉദാഹരണം:

ആട്രിബ്യൂട്ടിൽ ഒരു നിർദ്ദിഷ്ട മൂല്യം അടങ്ങിയിട്ടില്ല

വെബ്‌ഡ്രൈവറിൽ, നിങ്ങൾ തിരഞ്ഞെടുക്കാൻ ആഗ്രഹിക്കാത്ത മൂല്യങ്ങൾ ആട്രിബ്യൂട്ടിൽ അടങ്ങിയിരിക്കുന്ന ഘടകങ്ങൾ നിങ്ങൾ എങ്ങനെ കണ്ടെത്തും? നിർദ്ദിഷ്ട ആട്രിബ്യൂട്ട് മൂല്യം ഉപയോഗിച്ച് എങ്ങനെ തിരഞ്ഞെടുക്കരുതെന്ന് ഈ സി‌എസ്‌എസ് സെലക്ടർ ഉദാഹരണം കാണിക്കുന്നു


ഒരേ ആട്രിബ്യൂട്ടും ആട്രിബ്യൂട്ട് മൂല്യവും പങ്കിടുന്ന നിരവധി ഘടകങ്ങൾ നിങ്ങളുടെ പക്കലുണ്ടെന്ന് കരുതുക, എന്നാൽ ആ ഘടകങ്ങളിൽ ചിലതിന് മൂല്യവുമായി കൂട്ടിച്ചേർത്ത മറ്റ് വേരിയബിളുകൾ ഉണ്ട്. ഉദാ:

driver.findElement(By.cssSelector('div[class='ajax_enabled'] [style='display:block']'));

മുകളിലുള്ള സ്‌നിപ്പെറ്റിൽ, ലഭ്യമായ ഒരു ദിവസം തിരഞ്ഞെടുക്കാൻ ഞങ്ങൾ ആഗ്രഹിക്കുന്നു (അതായത് അവസാനത്തെ രണ്ട് ഘടകങ്ങൾ)

കാണാനാകുന്നതുപോലെ, നാല് ഡിവിസുകളിലും “കലണ്ടർ-ഡേ-” അടങ്ങിയിരിക്കുന്നു, എന്നാൽ ആദ്യ രണ്ടിലും “ആവശ്യമില്ലാത്തത്” അടങ്ങിയിരിക്കുന്നു.

ആദ്യ രണ്ട് ഒഴിവുകൾ തിരഞ്ഞെടുക്കാത്തതിനുള്ള സി‌എസ്‌എസ് സെലക്ടർ


div

കുട്ടികളുടെ ഘടകം കണ്ടെത്തുന്നു

driver.findElement(By.cssSelector('div[class*=calendar-day-]:not([class*='unavailable'])'));'

ഇമേജ് ടാഗ് കണ്ടെത്താൻ, ഞങ്ങൾ ഇത് ഉപയോഗിക്കുന്നു:

ഒന്നിലധികം കുട്ടികളുടെ ഘടകങ്ങൾ

ലിസ്റ്റ് ഘടകങ്ങൾ പോലുള്ള ഒരേ രക്ഷാകർതൃ ഘടകത്തിനുള്ളിൽ ഒന്നിലധികം കുട്ടികളുടെ ഘടകങ്ങൾ ഉള്ള സന്ദർഭങ്ങളുണ്ട്

driver.findElement(By.cssSelector('div#logo img'));

കാണാനാകുന്നതുപോലെ, വ്യക്തിഗത ലിസ്റ്റ് ഘടകങ്ങളുമായി അവരുമായി ഒരു ഐഡിയും ബന്ധപ്പെടുത്തിയിട്ടില്ല. ‘ഓറഞ്ച്’ എന്ന വാചകം ഉപയോഗിച്ച് ഘടകം കണ്ടെത്താൻ, ഞങ്ങൾ


  • Apple

  • Orange

  • Banana

ഉദാഹരണം:


nth-of-type

അതുപോലെ, അവസാനത്തെ കുട്ടികളുടെ ഘടകം തിരഞ്ഞെടുക്കാൻ, അതായത് ‘വാഴപ്പഴം’, ഞങ്ങൾ ഉപയോഗിക്കുന്നത്:

driver.findElement(By.cssSelector('ul#fruit li:nth-of-type(2)'));

ചലനാത്മകമായി ജനറേറ്റുചെയ്‌ത ഐഡികൾ

ചലനാത്മകമായി ജനറേറ്റുചെയ്‌ത ഐഡികൾ ഉപയോഗിച്ച് ഘടകങ്ങൾ കണ്ടെത്താൻ ഞങ്ങൾക്ക് സ്‌ട്രിംഗ് മാച്ചറുകൾ ഉപയോഗിക്കാം.

ഈ ഉദാഹരണത്തിൽ, മൂന്ന് ഒഴിവ് ഘടകങ്ങളിലും ‘റാൻഡം’ എന്ന വാക്ക് അടങ്ങിയിരിക്കുന്നു.

driver.findElement(By.cssSelector('ul#fruit li:last-child'));

ആട്രിബ്യൂട്ട് ആരംഭിക്കുന്നു

ആദ്യ തിരഞ്ഞെടുക്കാൻ ഘടകം, ഞങ്ങൾ div ഉപയോഗിക്കും ഇതിനർത്ഥം ‘ആരംഭിക്കുന്നു’:

^=

ആട്രിബ്യൂട്ട് അവസാനിക്കുന്നു

രണ്ടാമത്തേത് തിരഞ്ഞെടുക്കാൻ driver.findElement(By.cssSelector('div[id^='123']')); ഘടകം, ഞങ്ങൾ div ഉപയോഗിക്കും അതിന്റെ അർത്ഥം ‘അവസാനിക്കുന്നു’:

$=

ആട്രിബ്യൂട്ട് അടങ്ങിയിരിക്കുന്നു

അവസാനത്തെ driver.findElement(By.cssSelector('div[id$='456']')); തിരഞ്ഞെടുക്കാൻ ഞങ്ങൾ ഉപയോഗിക്കുന്ന ഘടകം div അതിന്റെ അർത്ഥം ‘ഉപ-സ്ട്രിംഗ്’

*=

നമുക്ക് driver.findElement(By.cssSelector('div[id*='_pattern_']')); ഉപയോഗിക്കാം

contains

കൂടുതൽ വായനയ്ക്ക്:

രസകരമായ ലേഖനങ്ങൾ