HTML పేజీలో ఒక మూలకాన్ని కనుగొనడానికి XPath మరియు Selenium ని ఉపయోగించడం

Using Xpath Selenium Find An Element Html Page



XPL, XML పాత్ లాంగ్వేజ్ అని కూడా పిలుస్తారు, ఇది XML డాక్యుమెంట్ నుండి ఎలిమెంట్‌లను ఎంచుకోవడానికి ఒక భాష. HTML మరియు XML ఒకే డాక్యుమెంట్ స్ట్రక్చర్‌ను అనుసరిస్తున్నందున, XPath వెబ్ పేజీ నుండి ఎలిమెంట్‌లను ఎంచుకోవడానికి కూడా ఉపయోగించవచ్చు.

వెబ్ పేజీ నుండి మూలకాలను గుర్తించడం మరియు ఎంచుకోవడం అనేది సెలీనియంతో వెబ్ స్క్రాపింగ్‌కు కీలకం. వెబ్ పేజీ నుండి మూలకాలను గుర్తించడం మరియు ఎంచుకోవడం కోసం, మీరు సెలీనియంలో XPath సెలెక్టర్లను ఉపయోగించవచ్చు.







ఈ వ్యాసంలో, సెలీనియం పైథాన్ లైబ్రరీతో సెలీనియంలో XPath సెలెక్టర్లను ఉపయోగించి వెబ్ పేజీల నుండి అంశాలను ఎలా గుర్తించాలో మరియు ఎలా ఎంచుకోవాలో నేను మీకు చూపించబోతున్నాను. కాబట్టి, ప్రారంభిద్దాం.



ముందస్తు అవసరాలు:

ఈ వ్యాసం యొక్క ఆదేశాలు మరియు ఉదాహరణలను ప్రయత్నించడానికి, మీరు తప్పక కలిగి ఉండాలి,



  1. మీ కంప్యూటర్‌లో ఇన్‌స్టాల్ చేయబడిన లైనక్స్ పంపిణీ (ప్రాధాన్యంగా ఉబుంటు).
  2. మీ కంప్యూటర్‌లో పైథాన్ 3 ఇన్‌స్టాల్ చేయబడింది.
  3. మీ కంప్యూటర్‌లో PIP 3 ఇన్‌స్టాల్ చేయబడింది.
  4. పైథాన్ virtualenv మీ కంప్యూటర్‌లో ప్యాకేజీ ఇన్‌స్టాల్ చేయబడింది.
  5. మీ కంప్యూటర్‌లో ఇన్‌స్టాల్ చేయబడిన మొజిల్లా ఫైర్‌ఫాక్స్ లేదా గూగుల్ క్రోమ్ వెబ్ బ్రౌజర్‌లు.
  6. ఫైర్‌ఫాక్స్ జెక్కో డ్రైవర్ లేదా క్రోమ్ వెబ్ డ్రైవర్‌ను ఎలా ఇన్‌స్టాల్ చేయాలో తెలుసుకోవాలి.

4, 5 మరియు 6 అవసరాలు నెరవేర్చడానికి, నా కథనాన్ని చదవండి పైథాన్ 3 లో సెలీనియం పరిచయం . ఇతర అంశాలపై మీరు అనేక కథనాలను కనుగొనవచ్చు LinuxHint.com . మీకు ఏదైనా సహాయం అవసరమైతే వాటిని తనిఖీ చేయండి.





ప్రాజెక్ట్ డైరెక్టరీని సెటప్ చేస్తోంది:

ప్రతిదీ క్రమబద్ధంగా ఉంచడానికి, కొత్త ప్రాజెక్ట్ డైరెక్టరీని సృష్టించండి సెలీనియం-ఎక్స్‌పాత్/ కింది విధంగా:

$mkdir -పివిసెలీనియం-ఎక్స్‌పాత్/డ్రైవర్లు



కు నావిగేట్ చేయండి సెలీనియం-ఎక్స్‌పాత్/ ప్రాజెక్ట్ డైరెక్టరీ క్రింది విధంగా ఉంది:

$CDసెలీనియం-ఎక్స్‌పాత్/

ప్రాజెక్ట్ డైరెక్టరీలో పైథాన్ వర్చువల్ ఎన్విరాన్‌మెంట్‌ను ఈ క్రింది విధంగా సృష్టించండి:

$virtualenv .venv

వర్చువల్ ఎన్విరాన్‌మెంట్‌ను ఈ క్రింది విధంగా యాక్టివేట్ చేయండి:

$మూలం.venv/am/సక్రియం

ఈ క్రింది విధంగా PIP3 ఉపయోగించి సెలీనియం పైథాన్ లైబ్రరీని ఇన్‌స్టాల్ చేయండి:

$ pip3 సెలీనియంను ఇన్‌స్టాల్ చేయండి

లో అవసరమైన అన్ని వెబ్ డ్రైవర్‌లను డౌన్‌లోడ్ చేసి, ఇన్‌స్టాల్ చేయండి డ్రైవర్లు/ ప్రాజెక్ట్ డైరెక్టరీ. వెబ్‌డ్రైవర్‌లను డౌన్‌లోడ్ చేసి, ఇన్‌స్టాల్ చేసే విధానాన్ని నేను నా వ్యాసంలో వివరించాను పైథాన్ 3 లో సెలీనియం పరిచయం .

Chrome డెవలపర్ సాధనాన్ని ఉపయోగించి XPath సెలెక్టర్‌ను పొందండి:

ఈ విభాగంలో, Google Chrome వెబ్ బ్రౌజర్ యొక్క అంతర్నిర్మిత డెవలపర్ సాధనాన్ని ఉపయోగించి మీరు సెలీనియంతో ఎంచుకోవాలనుకుంటున్న వెబ్ పేజీ మూలకం యొక్క XPath సెలెక్టర్‌ను ఎలా కనుగొనాలో నేను మీకు చూపించబోతున్నాను.

Google Chrome వెబ్ బ్రౌజర్‌ని ఉపయోగించి XPath సెలెక్టర్‌ను పొందడానికి, Google Chrome ని తెరిచి, మీరు డేటాను సేకరించాలనుకుంటున్న వెబ్‌సైట్‌ను సందర్శించండి. అప్పుడు, పేజీ యొక్క ఖాళీ ప్రాంతంలో కుడి మౌస్ బటన్‌ని (RMB) నొక్కండి మరియు దానిపై క్లిక్ చేయండి తనిఖీ చేయండి తెరవడానికి Chrome డెవలపర్ సాధనం .

మీరు కూడా నొక్కవచ్చు + మార్పు + నేను తెరవడానికి Chrome డెవలపర్ సాధనం .

Chrome డెవలపర్ సాధనం తెరవాలి.

మీకు కావలసిన వెబ్ పేజీ మూలకం యొక్క HTML ప్రాతినిధ్యాన్ని కనుగొనడానికి, దానిపై క్లిక్ చేయండి తనిఖీ చేయండి (

) చిహ్నం, దిగువ స్క్రీన్ షాట్‌లో మార్క్ చేయబడినట్లుగా.

అప్పుడు, మీకు కావలసిన వెబ్ పేజీ మూలకంపై హోవర్ చేయండి మరియు దానిని ఎంచుకోవడానికి ఎడమ మౌస్ బటన్‌ని (LMB) నొక్కండి.

మీరు ఎంచుకున్న వెబ్ మూలకం యొక్క HTML ప్రాతినిధ్యం హైలైట్ చేయబడుతుంది మూలకాలు యొక్క టాబ్ Chrome డెవలపర్ టూల్, మీరు దిగువ స్క్రీన్ షాట్‌లో చూడవచ్చు.

మీకు కావలసిన మూలకం యొక్క XPath సెలెక్టర్‌ని పొందడానికి, నుండి మూలకాన్ని ఎంచుకోండి మూలకాలు యొక్క ట్యాబ్ Chrome డెవలపర్ సాధనం మరియు దానిపై కుడి క్లిక్ చేయండి (RMB). అప్పుడు, ఎంచుకోండి కాపీ > XPath కాపీ, దిగువ స్క్రీన్‌షాట్‌లో గుర్తించబడింది.

నేను టెక్స్ట్ ఎడిటర్‌లో XPath సెలెక్టర్‌ను అతికించాను. దిగువ స్క్రీన్ షాట్‌లో చూపిన విధంగా XPath సెలెక్టర్ కనిపిస్తుంది.

ఫైర్‌ఫాక్స్ డెవలపర్ సాధనాన్ని ఉపయోగించి XPath సెలెక్టర్‌ను పొందండి:

ఈ విభాగంలో, మొజిల్లా ఫైర్‌ఫాక్స్ వెబ్ బ్రౌజర్ యొక్క అంతర్నిర్మిత డెవలపర్ సాధనాన్ని ఉపయోగించి మీరు సెలీనియంతో ఎంచుకోవాలనుకుంటున్న వెబ్ పేజీ మూలకం యొక్క XPath సెలెక్టర్‌ను ఎలా కనుగొనాలో నేను మీకు చూపించబోతున్నాను.

ఫైర్‌ఫాక్స్ వెబ్ బ్రౌజర్‌ని ఉపయోగించి XPath సెలెక్టర్‌ను పొందడానికి, ఫైర్‌ఫాక్స్ తెరిచి, మీరు డేటాను సేకరించాలనుకుంటున్న వెబ్‌సైట్‌ను సందర్శించండి. అప్పుడు, పేజీ యొక్క ఖాళీ ప్రాంతంలో కుడి మౌస్ బటన్‌ని (RMB) నొక్కండి మరియు దానిపై క్లిక్ చేయండి మూలకాన్ని తనిఖీ చేయండి (Q) తెరవడానికి ఫైర్‌ఫాక్స్ డెవలపర్ టూల్ .

ఫైర్‌ఫాక్స్ డెవలపర్ టూల్ తెరవాలి.

మీకు కావలసిన వెబ్ పేజీ మూలకం యొక్క HTML ప్రాతినిధ్యాన్ని కనుగొనడానికి, దానిపై క్లిక్ చేయండి తనిఖీ చేయండి (

) చిహ్నం, దిగువ స్క్రీన్ షాట్‌లో మార్క్ చేయబడినట్లుగా.

అప్పుడు, మీకు కావలసిన వెబ్ పేజీ మూలకంపై హోవర్ చేయండి మరియు దానిని ఎంచుకోవడానికి ఎడమ మౌస్ బటన్‌ని (LMB) నొక్కండి.

మీరు ఎంచుకున్న వెబ్ మూలకం యొక్క HTML ప్రాతినిధ్యం హైలైట్ చేయబడుతుంది ఇన్స్పెక్టర్ యొక్క ట్యాబ్ ఫైర్‌ఫాక్స్ డెవలపర్ టూల్, మీరు దిగువ స్క్రీన్ షాట్‌లో చూడవచ్చు.

మీకు కావలసిన మూలకం యొక్క XPath సెలెక్టర్‌ని పొందడానికి, నుండి మూలకాన్ని ఎంచుకోండి ఇన్స్పెక్టర్ యొక్క ట్యాబ్ ఫైర్‌ఫాక్స్ డెవలపర్ టూల్ మరియు దానిపై కుడి క్లిక్ చేయండి (RMB). అప్పుడు, ఎంచుకోండి కాపీ > XPath దిగువ స్క్రీన్‌షాట్‌లో గుర్తించబడింది.

మీకు కావలసిన మూలకం యొక్క XPath సెలెక్టర్ ఇలా కనిపిస్తుంది.

XPath సెలెక్టర్ ఉపయోగించి వెబ్ పేజీల నుండి డేటాను సేకరించడం:

ఈ విభాగంలో, సెలీనియం పైథాన్ లైబ్రరీతో XPath సెలెక్టర్లను ఉపయోగించి వెబ్ పేజీ మూలకాలను ఎలా ఎంచుకోవాలో మరియు వాటి నుండి డేటాను ఎలా సేకరించాలో నేను మీకు చూపించబోతున్నాను.

ముందుగా, కొత్త పైథాన్ స్క్రిప్ట్‌ను సృష్టించండి ex01.py మరియు కోడ్‌ల కింది పంక్తులను టైప్ చేయండి.

నుండిసెలీనియందిగుమతివెబ్‌డ్రైవర్
నుండిసెలీనియం.వెబ్‌డ్రైవర్.సాధారణ.కీలు దిగుమతికీలు
నుండిసెలీనియం.వెబ్‌డ్రైవర్.సాధారణ.ద్వారా దిగుమతిద్వారా
ఎంపికలు=వెబ్‌డ్రైవర్.ChromeOptions()
ఎంపికలు.తలలేని = నిజమే
బ్రౌజర్=వెబ్‌డ్రైవర్.క్రోమ్(అమలు చేయగల మార్గం='./drivers/chromedriver',
ఎంపికలు=ఎంపికలు)
బ్రౌజర్.పొందండి('https://www.unixtimestamp.com/')
టైమ్‌స్టాంప్=బ్రౌజర్.ఎక్స్‌పాత్ ద్వారా ఎలిమెంట్_ని కనుగొనండి('/html/body/div [1]/div [1]
/div [2]/div [1]/div/div/h3 [2] '
)
ముద్రణ('ప్రస్తుత టైమ్‌స్టాంప్: %s'%(టైమ్‌స్టాంప్.టెక్స్ట్.విభజన('')[0]))
బ్రౌజర్.దగ్గరగా()

మీరు పూర్తి చేసిన తర్వాత, దాన్ని సేవ్ చేయండి ex01.py పైథాన్ స్క్రిప్ట్.

లైన్ 1-3 అన్ని అవసరమైన సెలీనియం భాగాలను దిగుమతి చేస్తుంది.

లైన్ 5 ఒక Chrome ఐచ్ఛికాల వస్తువును సృష్టిస్తుంది, మరియు లైన్ 6 Chrome వెబ్ బ్రౌజర్ కోసం హెడ్‌లెస్ మోడ్‌ను ప్రారంభిస్తుంది.

లైన్ 8 ఒక Chrome ని సృష్టిస్తుంది బ్రౌజర్ వస్తువు ఉపయోగించి వస్తువు క్రోమెడ్రైవర్ నుండి బైనరీ డ్రైవర్లు/ ప్రాజెక్ట్ డైరెక్టరీ.

Unixtimestamp.com వెబ్‌సైట్‌ను లోడ్ చేయమని లైన్ 10 బ్రౌజర్‌కి చెబుతుంది.

XPath సెలెక్టర్‌ని ఉపయోగించి పేజీ నుండి టైమ్‌స్టాంప్ డేటాను కలిగి ఉన్న మూలకాన్ని లైన్ 12 కనుగొంటుంది మరియు దానిని నిల్వ చేస్తుంది టైమ్‌స్టాంప్ వేరియబుల్.

లైన్ 13 మూలకం నుండి టైమ్‌స్టాంప్ డేటాను అన్వయించి, దానిని కన్సోల్‌లో ప్రింట్ చేస్తుంది.

నేను మార్క్ చేసిన XPath సెలెక్టర్‌ని కాపీ చేసాను h2 నుండి మూలకం unixtimestamp.com Chrome డెవలపర్ సాధనాన్ని ఉపయోగించి.

14 వ లైన్ బ్రౌజర్‌ను మూసివేస్తుంది.

పైథాన్ స్క్రిప్ట్‌ను అమలు చేయండి ex01.py కింది విధంగా:

$ పైథాన్ 3 ex01.పై

మీరు గమనిస్తే, టైమ్‌స్టాంప్ డేటా స్క్రీన్‌పై ముద్రించబడుతుంది.

ఇక్కడ, నేను ఉపయోగించాను browser.find_element_by_xpath (సెలెక్టర్) పద్ధతి ఈ పద్ధతి యొక్క ఏకైక పరామితి సెలెక్టర్, ఇది మూలకం యొక్క XPath సెలెక్టర్.

బదులుగా browser.find_element_by_xpath () పద్ధతి, మీరు కూడా ఉపయోగించవచ్చు browser.find_element (ద్వారా, సెలెక్టర్) పద్ధతి ఈ పద్ధతికి రెండు పారామితులు అవసరం. మొదటి పరామితి ద్వారా ఉంటుంది XPATH ద్వారా మేము XPath సెలెక్టర్ మరియు రెండవ పారామీటర్‌ని ఉపయోగిస్తాము సెలెక్టర్ XPath సెలెక్టర్ కూడా ఉంటుంది. ఫలితం అలాగే ఉంటుంది.

ఎలాగో చూడటానికి browser.find_element () XPath సెలెక్టర్ కోసం పద్ధతి పనిచేస్తుంది, కొత్త పైథాన్ స్క్రిప్ట్‌ను సృష్టించండి ex02.py , నుండి అన్ని పంక్తులను కాపీ చేసి అతికించండి ex01.py కు ex02.py మరియు మార్పు లైన్ 12 దిగువ స్క్రీన్‌షాట్‌లో గుర్తించబడింది.

మీరు గమనిస్తే, పైథాన్ స్క్రిప్ట్ ex02.py అదే ఫలితాన్ని ఇస్తుంది ex01.py .

$ పైథాన్ 3 ex02.పై

ది browser.find_element_by_xpath () మరియు browser.find_element () వెబ్ పేజీల నుండి ఒకే మూలకాన్ని కనుగొనడానికి మరియు ఎంచుకోవడానికి పద్ధతులు ఉపయోగించబడతాయి. మీరు XPath సెలెక్టర్లను ఉపయోగించి బహుళ అంశాలను కనుగొని ఎంచుకోవాలనుకుంటే, మీరు ఉపయోగించాల్సి ఉంటుంది browser.find_elements_by_xpath () లేదా browser.find_elements () పద్ధతులు.

ది browser.find_elements_by_xpath () పద్ధతి అదే వాదనను తీసుకుంటుంది browser.find_element_by_xpath () పద్ధతి

ది browser.find_elements () పద్ధతి అదే వాదనలను తీసుకుంటుంది browser.find_element () పద్ధతి

నుండి XPath సెలెక్టర్ ఉపయోగించి పేర్ల జాబితాను సేకరించే ఉదాహరణను చూద్దాం random-name-generator.info సెలీనియం పైథాన్ లైబ్రరీతో.

క్రమం లేని జాబితా ( చనిపోతారు ట్యాగ్) 10 కలిగి ఉంది వద్ద ప్రతి లోపల ట్యాగ్‌లు యాదృచ్ఛిక పేరును కలిగి ఉంటాయి. అన్నింటినీ ఎంచుకోవడానికి XPath వద్ద లోపల ట్యాగ్‌లు చనిపోతారు ఈ కేసులో ట్యాగ్ ఉంది //*[@id = ప్రధాన]/div [3]/div [2]/ol // li

XPath సెలెక్టర్లను ఉపయోగించి వెబ్ పేజీ నుండి బహుళ అంశాలను ఎంచుకోవడానికి ఒక ఉదాహరణ ద్వారా వెళ్దాం.

కొత్త పైథాన్ స్క్రిప్ట్‌ను సృష్టించండి ex03.py మరియు దానిలోని క్రింది కోడ్‌ల పంక్తులను టైప్ చేయండి.

నుండిసెలీనియందిగుమతివెబ్‌డ్రైవర్
నుండిసెలీనియం.వెబ్‌డ్రైవర్.సాధారణ.కీలు దిగుమతికీలు
నుండిసెలీనియం.వెబ్‌డ్రైవర్.సాధారణ.ద్వారా దిగుమతిద్వారా
ఎంపికలు=వెబ్‌డ్రైవర్.ChromeOptions()
ఎంపికలు.తలలేని = నిజమే
బ్రౌజర్=వెబ్‌డ్రైవర్.క్రోమ్(అమలు చేయగల మార్గం='./drivers/chromedriver',
ఎంపికలు=ఎంపికలు)
బ్రౌజర్.పొందండి('http://random-name-generator.info/')
పేర్లు=బ్రౌజర్.ఎక్స్‌పాత్ ద్వారా ఎలిమెంట్స్_ని కనుగొనండి('
//*[@id = 'main']/div [3]/div [2]/ol // li '
)
కోసంపేరులోపేర్లు:
ముద్రణ(పేరుటెక్స్ట్)
బ్రౌజర్.దగ్గరగా()

మీరు పూర్తి చేసిన తర్వాత, దాన్ని సేవ్ చేయండి ex03.py పైథాన్ స్క్రిప్ట్.

1-8 వ పంక్తి అదే విధంగా ఉంటుంది ex01.py పైథాన్ స్క్రిప్ట్. కాబట్టి, నేను వాటిని మళ్లీ ఇక్కడ వివరించడం లేదు.

ర్యాండమ్- name-generator.info వెబ్‌సైట్‌ను లోడ్ చేయమని లైన్ 10 బ్రౌజర్‌కి చెబుతుంది.

లైన్ 12 పేరు ఉపయోగించి పేరు జాబితాను ఎంచుకుంటుంది browser.find_elements_by_xpath () పద్ధతి ఈ పద్ధతి XPath సెలెక్టర్‌ని ఉపయోగిస్తుంది //*[@id = ప్రధాన]/div [3]/div [2]/ol // li పేరు జాబితాను కనుగొనడానికి. తరువాత, పేరు జాబితా నిల్వ చేయబడుతుంది పేర్లు వేరియబుల్.

13 మరియు 14 పంక్తులలో, a కోసం లూప్ ద్వారా మళ్ళించడానికి ఉపయోగించబడుతుంది పేర్లు కన్సోల్‌లో పేర్లను జాబితా చేసి ప్రింట్ చేయండి.

లైన్ 16 బ్రౌజర్‌ను మూసివేస్తుంది.

పైథాన్ స్క్రిప్ట్‌ను అమలు చేయండి ex03.py కింది విధంగా:

$ పైథాన్ 3 ex03.పై

మీరు చూడగలిగినట్లుగా, పేర్లు వెబ్ పేజీ నుండి సేకరించబడతాయి మరియు కన్సోల్‌లో ముద్రించబడతాయి.

ఉపయోగించడానికి బదులుగా browser.find_elements_by_xpath () పద్ధతి, మీరు కూడా ఉపయోగించవచ్చు browser.find_elements () మునుపటిలా పద్ధతి. ఈ పద్ధతి యొక్క మొదటి వాదన XPATH ద్వారా, మరియు రెండవ వాదన XPath సెలెక్టర్.

ప్రయోగం చేయడానికి browser.find_elements () పద్ధతి, కొత్త పైథాన్ స్క్రిప్ట్‌ను సృష్టించండి ex04.py , నుండి అన్ని కోడ్‌లను కాపీ చేయండి ex03.py కు ex04.py , మరియు దిగువ స్క్రీన్ షాట్‌లో మార్క్ చేసిన విధంగా లైన్ 12 ని మార్చండి.

మీరు మునుపటి ఫలితాన్ని పొందాలి.

$ పైథాన్ 3 ex04.పై

XPath సెలెక్టర్ యొక్క ప్రాథమికాలు:

డెవలపర్ టూల్ ఆఫ్ ఫైర్‌ఫాక్స్ లేదా గూగుల్ క్రోమ్ వెబ్ బ్రౌజర్ స్వయంచాలకంగా XPath సెలెక్టర్‌ని ఉత్పత్తి చేస్తుంది. కానీ ఈ XPath సెలెక్టర్లు కొన్నిసార్లు మీ ప్రాజెక్ట్ కోసం సరిపోవు. ఆ సందర్భంలో, మీ XPath సెలెక్టర్‌ను రూపొందించడానికి ఒక నిర్దిష్ట XPath సెలెక్టర్ ఏమి చేస్తుందో మీరు తప్పక తెలుసుకోవాలి. ఈ విభాగంలో, నేను XPath సెలెక్టర్ల ప్రాథమికాలను మీకు చూపించబోతున్నాను. అప్పుడు, మీరు మీ స్వంత XPath సెలెక్టర్‌ను నిర్మించగలగాలి.

కొత్త డైరెక్టరీని సృష్టించండి www/ మీ ప్రాజెక్ట్ డైరెక్టరీలో ఈ క్రింది విధంగా:

$mkdir -vwww

క్రొత్త ఫైల్‌ను సృష్టించండి web01.html లో www/ డైరెక్టరీ మరియు ఆ ఫైల్‌లో కింది లైన్‌లను టైప్ చేయండి.


< html లాంగ్='పై'>
< తల >
< మెటా చార్సెట్='UTF-8'>
< మెటా పేరు='వ్యూపోర్ట్' విషయము='వెడల్పు = పరికరం-వెడల్పు, ప్రారంభ-స్థాయి = 1.0'>
< శీర్షిక >ప్రాథమిక HTML పత్రం</ శీర్షిక >
</ తల >
< శరీరం >
< h1 >హలో వరల్డ్</ h1 >
</ శరీరం >
</ html >

మీరు పూర్తి చేసిన తర్వాత, దాన్ని సేవ్ చేయండి web01.html ఫైల్.

కింది ఆదేశాన్ని ఉపయోగించి పోర్ట్ 8080 లో ఒక సాధారణ HTTP సర్వర్‌ను అమలు చేయండి:

$ python3 -m http.సర్వర్--డైరెక్టరీ www/8080

HTTP సర్వర్ ప్రారంభం కావాలి.

మీరు యాక్సెస్ చేయగలరు web01.html URL ఉపయోగించి ఫైల్ http: // Localhost: 8080/web01.html , మీరు దిగువ స్క్రీన్ షాట్‌లో చూడవచ్చు.

ఫైర్‌ఫాక్స్ లేదా క్రోమ్ డెవలపర్ టూల్ తెరవబడినప్పుడు, నొక్కండి + ఎఫ్ శోధన పెట్టెను తెరవడానికి. మీరు ఇక్కడ మీ XPath సెలెక్టర్‌ని టైప్ చేయవచ్చు మరియు అది చాలా సులభంగా ఏమి ఎంచుకుంటుందో చూడవచ్చు. నేను ఈ విభాగంలో ఈ సాధనాన్ని ఉపయోగించబోతున్నాను.

ఒక XPath సెలెక్టర్ a తో మొదలవుతుంది ఫార్వర్డ్ స్లాష్ (/) ఎక్కువ సమయం. ఇది లైనక్స్ డైరెక్టరీ ట్రీ లాంటిది. ది / వెబ్ పేజీలోని అన్ని అంశాలకు మూలం.

మొదటి మూలకం html . కాబట్టి, XPath సెలెక్టర్ /html మొత్తం ఎంచుకుంటుంది html ట్యాగ్.

లోపల html ట్యాగ్, మాకు ఒక ఉంది శరీరం ట్యాగ్. ది శరీరం ట్యాగ్‌ను XPath సెలెక్టర్‌తో ఎంచుకోవచ్చు /html/శరీరం

ది h1 శీర్షిక లోపల ఉంది శరీరం ట్యాగ్. ది h1 XPath సెలెక్టర్‌తో హెడర్‌ని ఎంచుకోవచ్చు /html/శరీరం/h1

ఈ రకమైన XPath సెలెక్టర్‌ను సంపూర్ణ పాత్ సెలెక్టర్ అంటారు. సంపూర్ణ మార్గం సెలెక్టర్‌లో, మీరు తప్పనిసరిగా పేజీ యొక్క మూలం (/) నుండి వెబ్ పేజీని దాటాలి. సంపూర్ణ పాత్ సెలెక్టర్ యొక్క ప్రతికూలత ఏమిటంటే వెబ్ పేజీ నిర్మాణంలో స్వల్ప మార్పు కూడా మీ XPath సెలెక్టర్‌ను చెల్లనిదిగా చేస్తుంది. ఈ సమస్యకు పరిష్కారం సాపేక్ష లేదా పాక్షిక XPath సెలెక్టర్.

సాపేక్ష మార్గం లేదా పాక్షిక మార్గం ఎలా పనిచేస్తుందో చూడటానికి, కొత్త ఫైల్‌ని సృష్టించండి web02.html లో www/ డైరెక్టరీ మరియు దానిలోని కింది కోడ్‌ల పంక్తులను టైప్ చేయండి.


< html లాంగ్='పై'>
< తల >
< మెటా చార్సెట్='UTF-8'>
< మెటా పేరు='వ్యూపోర్ట్' విషయము='వెడల్పు = పరికరం-వెడల్పు, ప్రారంభ-స్థాయి = 1.0'>
< శీర్షిక >ప్రాథమిక HTML పత్రం</ శీర్షిక >
</ తల >
< శరీరం >
< h1 >హలో వరల్డ్</ h1 >

< div >
< p >ఇది సందేశం</ p >
</ div >

< div >
< వ్యవధి >హలో వరల్డ్</ వ్యవధి >
</ div >
</ శరీరం >
</ html >

మీరు పూర్తి చేసిన తర్వాత, దాన్ని సేవ్ చేయండి web02.html ఫైల్ చేసి మీ వెబ్ బ్రౌజర్‌లో లోడ్ చేయండి.

మీరు గమనిస్తే, XPath సెలెక్టర్ // div/p ఎంచుకుంటుంది p లోపల ట్యాగ్ చేయండి div ట్యాగ్. సాపేక్ష XPath సెలెక్టర్‌కు ఇది ఒక ఉదాహరణ.

సాపేక్ష XPath సెలెక్టర్ దీనితో మొదలవుతుంది // . అప్పుడు మీరు ఎంచుకోవాలనుకుంటున్న మూలకం యొక్క నిర్మాణాన్ని పేర్కొనండి. ఈ విషయంలో, div/p .

కాబట్టి, // div/p అంటే ఎంచుకోండి p ఎ లోపల మూలకం div మూలకం, దాని ముందు ఏమి వస్తుందో పట్టింపు లేదు.

వంటి విభిన్న లక్షణాల ద్వారా మీరు ఎలిమెంట్‌లను కూడా ఎంచుకోవచ్చు id , తరగతి , రకం, మొదలైనవి XPath సెలెక్టర్ ఉపయోగించి. దీన్ని ఎలా చేయాలో చూద్దాం.

క్రొత్త ఫైల్‌ను సృష్టించండి web03.html లో www/ డైరెక్టరీ మరియు దానిలోని కింది కోడ్‌ల పంక్తులను టైప్ చేయండి.


< html లాంగ్='పై'>
< తల >
< మెటా చార్సెట్='UTF-8'>
< మెటా పేరు='వ్యూపోర్ట్' విషయము='వెడల్పు = పరికరం-వెడల్పు, ప్రారంభ-స్థాయి = 1.0'>
< శీర్షిక > ప్రాథమిక HTML పత్రం</ శీర్షిక >
</ తల >
< శరీరం >
< h1 > హలో వరల్డ్</ h1 >
< div తరగతి='కంటైనర్ 1'>
< p > ఇది సందేశం</ p >
< వ్యవధి > ఇది మరొక సందేశం</ వ్యవధి >
</ div >
< div తరగతి='కంటైనర్ 1'>
< h2 > శీర్షిక2</ h2 >
< p > కొంతమంది
నొప్పులు, ఇబ్బందులు మరియు ఎంచుకున్న వాటి కోసం పడని వాటిని ఎంచుకోవడం మంచిది
సులభమైన విమానాలు మరియు ఇతర గొప్ప సేవలు కాదా? అతను ఎక్కడ నుండి లేదా ఎక్కడ జన్మించాడు?</ p >
</ div >

< వ్యవధి id='ఫుటర్-మెసేజ్'> ఇది ఫుటరు</ వ్యవధి >
</ఫుటరు>
</ శరీరం >
</ html >

మీరు పూర్తి చేసిన తర్వాత, దాన్ని సేవ్ చేయండి web03.html ఫైల్ చేసి మీ వెబ్ బ్రౌజర్‌లో లోడ్ చేయండి.

మీరు అన్నింటినీ ఎంచుకోవాలని అనుకుందాం div కలిగి ఉన్న అంశాలు తరగతి పేరు కంటైనర్ 1 . అలా చేయడానికి, మీరు XPath సెలెక్టర్‌ని ఉపయోగించవచ్చు // div [@class = 'కంటైనర్ 1 ′]

మీరు గమనిస్తే, XPath సెలెక్టర్‌కి సరిపోయే 2 అంశాలు నా దగ్గర ఉన్నాయి // div [@class = 'కంటైనర్ 1 ′]

మొదటిదాన్ని ఎంచుకోవడానికి div తో మూలకం తరగతి పేరు కంటైనర్ 1 , జోడించండి [1] దిగువ స్క్రీన్ షాట్‌లో చూపిన విధంగా XPath ఎంచుకోండి.

అదే విధంగా, మీరు రెండవదాన్ని ఎంచుకోవచ్చు div తో మూలకం తరగతి పేరు కంటైనర్ 1 XPath సెలెక్టర్ ఉపయోగించి // div [@class = 'కంటైనర్ 1 ′] [2]

ద్వారా మూలకాలను మీరు ఎంచుకోవచ్చు id అలాగే.

ఉదాహరణకు, కలిగి ఉన్న మూలకాన్ని ఎంచుకోవడానికి id యొక్క ఫుటర్- msg , మీరు XPath సెలెక్టర్‌ని ఉపయోగించవచ్చు //*[@id = 'ఫుటర్- msg']

ఇక్కడ, ది * ముందు [@id = 'ఫుటర్- msg'] వాటి ట్యాగ్‌తో సంబంధం లేకుండా ఏదైనా మూలకాన్ని ఎంచుకోవడానికి ఉపయోగించబడుతుంది.

ఇది XPath సెలెక్టర్ యొక్క ప్రాథమిక అంశాలు. ఇప్పుడు, మీరు మీ సెలీనియం ప్రాజెక్ట్‌ల కోసం మీ స్వంత XPath సెలెక్టర్‌ను సృష్టించగలరు.

ముగింపు:

ఈ వ్యాసంలో, సెలీనియం పైథాన్ లైబ్రరీతో XPath సెలెక్టర్‌ని ఉపయోగించి వెబ్ పేజీల నుండి అంశాలను ఎలా కనుగొనాలో మరియు ఎలా ఎంచుకోవాలో నేను మీకు చూపించాను. నేను అత్యంత సాధారణ XPath సెలెక్టర్ల గురించి కూడా చర్చించాను. ఈ కథనాన్ని చదివిన తర్వాత, సెలీనియం పైథాన్ లైబ్రరీతో XPath సెలెక్టర్‌ని ఉపయోగించి వెబ్ పేజీల నుండి ఎలిమెంట్‌లను ఎంచుకోవడంలో మీరు చాలా నమ్మకంగా ఉండాలి.