ఈ వ్యాసం మీ లైనక్స్ డిస్ట్రిబ్యూషన్ (అంటే ఉబుంటు) పై సెలీనియం ఎలా సెటప్ చేయాలో, అలాగే సెలీనియం పైథాన్ 3 లైబ్రరీతో ప్రాథమిక వెబ్ ఆటోమేషన్ మరియు వెబ్ స్క్రాపింగ్ ఎలా చేయాలో చూపుతుంది.
ముందస్తు అవసరాలు
ఈ కథనంలో ఉపయోగించిన ఆదేశాలు మరియు ఉదాహరణలను ప్రయత్నించడానికి, మీరు తప్పనిసరిగా ఈ క్రింది వాటిని కలిగి ఉండాలి:
1) మీ కంప్యూటర్లో ఇన్స్టాల్ చేయబడిన లైనక్స్ పంపిణీ (ప్రాధాన్యంగా ఉబుంటు).
2) మీ కంప్యూటర్లో పైథాన్ 3 ఇన్స్టాల్ చేయబడింది.
3) మీ కంప్యూటర్లో PIP 3 ఇన్స్టాల్ చేయబడింది.
4) మీ కంప్యూటర్లో ఇన్స్టాల్ చేయబడిన Google Chrome లేదా Firefox వెబ్ బ్రౌజర్.
ఈ అంశాలపై మీరు అనేక కథనాలను ఇక్కడ కనుగొనవచ్చు LinuxHint.com . మీకు ఇంకా ఏవైనా సహాయం అవసరమైతే ఈ కథనాలను తనిఖీ చేయండి.
ప్రాజెక్ట్ కోసం పైథాన్ 3 వర్చువల్ ఎన్విరాన్మెంట్ను సిద్ధం చేస్తోంది
పైథాన్ వర్చువల్ ఎన్విరాన్మెంట్ ఒక వివిక్త పైథాన్ ప్రాజెక్ట్ డైరెక్టరీని సృష్టించడానికి ఉపయోగించబడుతుంది. మీరు PIP ని ఉపయోగించి ఇన్స్టాల్ చేసే పైథాన్ మాడ్యూల్స్ ప్రపంచవ్యాప్తంగా కాకుండా ప్రాజెక్ట్ డైరెక్టరీలో మాత్రమే ఇన్స్టాల్ చేయబడతాయి.
పైథాన్ virtualenv పైథాన్ వర్చువల్ ఎన్విరాన్మెంట్లను నిర్వహించడానికి మాడ్యూల్ ఉపయోగించబడుతుంది.
మీరు పైథాన్ను ఇన్స్టాల్ చేయవచ్చు virtualenv PIP 3 ఉపయోగించి ప్రపంచవ్యాప్తంగా మాడ్యూల్, కింది విధంగా:
$ sudo pip3 virtualenv ని ఇన్స్టాల్ చేయండిPIP3 డౌన్లోడ్ చేస్తుంది మరియు ప్రపంచవ్యాప్తంగా అవసరమైన అన్ని మాడ్యూల్లను ఇన్స్టాల్ చేస్తుంది.
ఈ సమయంలో, పైథాన్ virtualenv మాడ్యూల్ ప్రపంచవ్యాప్తంగా ఇన్స్టాల్ చేయాలి.
ప్రాజెక్ట్ డైరెక్టరీని సృష్టించండి పైథాన్-సెలీనియం-బేసిక్/ మీ ప్రస్తుత పని డైరెక్టరీలో, ఈ క్రింది విధంగా:
$ mkdir -pv పైథాన్-సెలీనియం-బేసిక్/డ్రైవర్లుమీరు కొత్తగా సృష్టించిన ప్రాజెక్ట్ డైరెక్టరీకి నావిగేట్ చేయండి పైథాన్-సెలీనియం-బేసిక్/ , ఈ క్రింది విధంగా:
$CDపైథాన్-సెలీనియం-బేసిక్/కింది ఆదేశంతో మీ ప్రాజెక్ట్ డైరెక్టరీలో పైథాన్ వర్చువల్ వాతావరణాన్ని సృష్టించండి:
$ virtualenv.ఎన్విపైథాన్ వర్చువల్ ఎన్విరాన్మెంట్ ఇప్పుడు మీ ప్రాజెక్ట్ డైరెక్టరీలో సృష్టించబడాలి. ’
కింది ఆదేశం ద్వారా మీ ప్రాజెక్ట్ డైరెక్టరీలో పైథాన్ వర్చువల్ వాతావరణాన్ని సక్రియం చేయండి:
$ మూలం.ఎన్వి/బిన్/యాక్టివేట్మీరు గమనిస్తే, ఈ ప్రాజెక్ట్ డైరెక్టరీ కోసం పైథాన్ వర్చువల్ ఎన్విరాన్మెంట్ సక్రియం చేయబడింది.
సెలీనియం పైథాన్ లైబ్రరీని ఇన్స్టాల్ చేస్తోంది
సెలీనియం పైథాన్ లైబ్రరీ అధికారిక పైథాన్ పైపిఐ రిపోజిటరీలో అందుబాటులో ఉంది.
మీరు ఈ లైబ్రరీని ఈ క్రింది విధంగా PIP 3 ఉపయోగించి ఇన్స్టాల్ చేయవచ్చు:
$ pip3 సెలీనియంను ఇన్స్టాల్ చేయండిసెలీనియం పైథాన్ లైబ్రరీని ఇప్పుడు ఇన్స్టాల్ చేయాలి.
ఇప్పుడు సెలీనియం పైథాన్ లైబ్రరీ ఇన్స్టాల్ చేయబడిన తర్వాత, మీరు చేయాల్సిందల్లా మీకు ఇష్టమైన వెబ్ బ్రౌజర్ కోసం వెబ్ డ్రైవర్ను ఇన్స్టాల్ చేయడం. ఈ వ్యాసంలో, సెలీనియం కోసం ఫైర్ఫాక్స్ మరియు క్రోమ్ వెబ్ డ్రైవర్లను ఎలా ఇన్స్టాల్ చేయాలో నేను మీకు చూపుతాను.
ఫైర్ఫాక్స్ జెక్కో డ్రైవర్ను ఇన్స్టాల్ చేస్తోంది
ఫైర్ఫాక్స్ గెక్కో డ్రైవర్ సెలీనియం ఉపయోగించి ఫైర్ఫాక్స్ వెబ్ బ్రౌజర్ను నియంత్రించడానికి లేదా ఆటోమేట్ చేయడానికి మిమ్మల్ని అనుమతిస్తుంది.
ఫైర్ఫాక్స్ జెక్కో డ్రైవర్ను డౌన్లోడ్ చేయడానికి, సందర్శించండి GitHub మొజిల్లా/గెక్కోడ్రైవర్ పేజీని విడుదల చేస్తుంది వెబ్ బ్రౌజర్ నుండి.
మీరు గమనిస్తే, v0.26.0 అనేది ఈ వ్యాసం వ్రాయబడిన సమయంలో ఫైర్ఫాక్స్ గెక్కో డ్రైవర్ యొక్క తాజా వెర్షన్.
ఫైర్ఫాక్స్ జెక్కో డ్రైవర్ను డౌన్లోడ్ చేయడానికి, మీ ఆపరేటింగ్ సిస్టమ్ ఆర్కిటెక్చర్ని బట్టి, కొంచెం క్రిందికి స్క్రోల్ చేయండి మరియు Linux geckodriver tar.gz ఆర్కైవ్పై క్లిక్ చేయండి.
మీరు 32-బిట్ ఆపరేటింగ్ సిస్టమ్ ఉపయోగిస్తుంటే, క్లిక్ చేయండి geckodriver-v0.26.0-linux32.tar.gz లింక్
మీరు 64-బిట్ ఆపరేటింగ్ సిస్టమ్ ఉపయోగిస్తుంటే, క్లిక్ చేయండి geckodriver-v0.26.0-linuxx64.tar.gz లింక్
నా విషయంలో, నేను ఫైర్ఫాక్స్ గెక్కో డ్రైవర్ యొక్క 64-బిట్ వెర్షన్ను డౌన్లోడ్ చేస్తాను.
ఆర్కైవ్ను సేవ్ చేయడానికి మీ బ్రౌజర్ మిమ్మల్ని ప్రాంప్ట్ చేస్తుంది. ఎంచుకోండి పత్రాన్ని దాచు ఆపై క్లిక్ చేయండి అలాగే .
ఫైర్ఫాక్స్ గెక్కో డ్రైవర్ ఆర్కైవ్ను డౌన్లోడ్ చేయాలి ~/డౌన్లోడ్లు డైరెక్టరీ.
సంగ్రహించండి geckodriver-v0.26.0-linux64.tar.gz నుండి ఆర్కైవ్ ~/డౌన్లోడ్లు కు డైరెక్టరీ డ్రైవర్లు/ కింది ఆదేశాన్ని నమోదు చేయడం ద్వారా మీ ప్రాజెక్ట్ డైరెక్టరీ:
$తారు -xzfఐ/డౌన్లోడ్లు/geckodriver-v0.26.0-linux64.tar.gz-సిడ్రైవర్లు/
ఫైర్ఫాక్స్ గెక్కో డ్రైవర్ ఆర్కైవ్ సేకరించిన తర్వాత, కొత్తది గెక్కో డ్రైవర్ లో బైనరీ ఫైల్ సృష్టించాలి డ్రైవర్లు/ మీ ప్రాజెక్ట్ డైరెక్టరీ, మీరు దిగువ స్క్రీన్ షాట్లో చూడవచ్చు.
సెలీనియం ఫైర్ఫాక్స్ జెక్కో డ్రైవర్ని పరీక్షిస్తోంది
ఈ విభాగంలో, ఫైర్ఫాక్స్ గెక్కో డ్రైవర్ పనిచేస్తుందో లేదో పరీక్షించడానికి మీ మొదటి సెలీనియం పైథాన్ స్క్రిప్ట్ను ఎలా సెటప్ చేయాలో నేను మీకు చూపుతాను.
ముందుగా, ప్రాజెక్ట్ డైరెక్టరీని తెరవండి పైథాన్-సెలీనియం-బేసిక్/ మీకు ఇష్టమైన IDE లేదా ఎడిటర్తో. ఈ వ్యాసంలో, నేను విజువల్ స్టూడియో కోడ్ని ఉపయోగిస్తాను.
కొత్త పైథాన్ స్క్రిప్ట్ను సృష్టించండి ex01.py , మరియు స్క్రిప్ట్లో కింది పంక్తులను టైప్ చేయండి.
నుండిసెలీనియందిగుమతివెబ్డ్రైవర్నుండిసెలీనియం.వెబ్డ్రైవర్.సాధారణ.కీలు దిగుమతికీలు
నుండి సమయం దిగుమతినిద్ర
బ్రౌజర్=వెబ్డ్రైవర్.ఫైర్ఫాక్స్(అమలు చేయగల మార్గం='./drivers/geckodriver')
బ్రౌజర్.పొందండి('http://www.google.com')
నిద్ర(5)
బ్రౌజర్.వదిలేయండి()
మీరు పూర్తి చేసిన తర్వాత, దాన్ని సేవ్ చేయండి ex01.py పైథాన్ స్క్రిప్ట్.
నేను ఈ వ్యాసంలోని తరువాతి విభాగంలో కోడ్ని వివరిస్తాను.
కింది లైన్ ఫైర్ఫాక్స్ గెక్కో డ్రైవర్ను ఉపయోగించడానికి సెలీనియంను కాన్ఫిగర్ చేస్తుంది డ్రైవర్లు/ మీ ప్రాజెక్ట్ డైరెక్టరీ.
ఫైర్ఫాక్స్ జెక్కో డ్రైవర్ సెలీనియంతో పని చేస్తుందో లేదో పరీక్షించడానికి, కింది వాటిని అమలు చేయండి ex01.py పైథాన్ స్క్రిప్ట్:
$ పైథాన్ 3 ex01.పైఫైర్ఫాక్స్ వెబ్ బ్రౌజర్ స్వయంచాలకంగా Google.com ని సందర్శించాలి మరియు 5 సెకన్ల తర్వాత దానిని మూసివేయాలి. ఇది సంభవించినట్లయితే, అప్పుడు సెలీనియం ఫైర్ఫాక్స్ జెక్కో డ్రైవర్ సరిగ్గా పనిచేస్తుంది.
Chrome వెబ్ డ్రైవర్ని ఇన్స్టాల్ చేస్తోంది
సెలీనియం ఉపయోగించి గూగుల్ క్రోమ్ వెబ్ బ్రౌజర్ని నియంత్రించడానికి లేదా ఆటోమేట్ చేయడానికి Chrome వెబ్ డ్రైవర్ మిమ్మల్ని అనుమతిస్తుంది.
మీరు తప్పనిసరిగా మీ Google Chrome వెబ్ బ్రౌజర్ వలె Chrome వెబ్ డ్రైవర్ యొక్క అదే వెర్షన్ను డౌన్లోడ్ చేసుకోవాలి.
మీ Google Chrome వెబ్ బ్రౌజర్ యొక్క సంస్కరణ సంఖ్యను కనుగొనడానికి, సందర్శించండి క్రోమ్: // సెట్టింగ్లు/సహాయం Google Chrome లో. సంస్కరణ సంఖ్య ఇందులో ఉండాలి Chrome గురించి విభాగం, మీరు దిగువ స్క్రీన్ షాట్లో చూడవచ్చు.
నా విషయంలో, వెర్షన్ నంబర్ 83.0.4103.116 . వెర్షన్ నంబర్ యొక్క మొదటి మూడు భాగాలు ( 83.0.4103 , నా విషయంలో) తప్పనిసరిగా Chrome వెబ్ డ్రైవర్ వెర్షన్ నంబర్ యొక్క మొదటి మూడు భాగాలతో సరిపోలాలి.
Chrome వెబ్ డ్రైవర్ను డౌన్లోడ్ చేయడానికి, సందర్శించండి అధికారిక Chrome డ్రైవర్ డౌన్లోడ్ పేజీ .
లో ప్రస్తుత విడుదలలు విభాగం, Google Chrome వెబ్ బ్రౌజర్ యొక్క ప్రస్తుత విడుదలల కోసం Chrome వెబ్ డ్రైవర్ అందుబాటులో ఉంటుంది, ఎందుకంటే మీరు దిగువ స్క్రీన్ షాట్లో చూడవచ్చు.
ఒకవేళ మీరు ఉపయోగిస్తున్న గూగుల్ క్రోమ్ వెర్షన్ లో లేకపోతే ప్రస్తుత విడుదలలు విభాగం, కొద్దిగా క్రిందికి స్క్రోల్ చేయండి మరియు మీకు కావలసిన వెర్షన్ను మీరు కనుగొనాలి.
మీరు సరైన Chrome వెబ్ డ్రైవర్ వెర్షన్పై క్లిక్ చేసిన తర్వాత, అది మిమ్మల్ని క్రింది పేజీకి తీసుకెళ్లాలి. పై క్లిక్ చేయండి chromedriver_linux64.zip దిగువ స్క్రీన్షాట్లో పేర్కొన్న విధంగా లింక్.
Chrome వెబ్ డ్రైవర్ ఆర్కైవ్ ఇప్పుడు డౌన్లోడ్ చేయాలి.
Chrome వెబ్ డ్రైవర్ ఆర్కైవ్ ఇప్పుడు డౌన్లోడ్ చేయాలి ~/డౌన్లోడ్లు డైరెక్టరీ.
మీరు సేకరించవచ్చు క్రోమెడ్రైవర్- linux64.zip నుండి ఆర్కైవ్ ~/డౌన్లోడ్లు కు డైరెక్టరీ డ్రైవర్లు/ కింది ఆదేశంతో మీ ప్రాజెక్ట్ డైరెక్టరీ:
$ అన్జిప్ఐ/డౌన్లోడ్లు/chromedriver_linux64.జిప్-డి డ్రైవర్లు/
Chrome వెబ్ డ్రైవర్ ఆర్కైవ్ సంగ్రహించిన తర్వాత, కొత్తది క్రోమెడ్రైవర్ లో బైనరీ ఫైల్ సృష్టించాలి డ్రైవర్లు/ మీ ప్రాజెక్ట్ డైరెక్టరీ, మీరు దిగువ స్క్రీన్ షాట్లో చూడవచ్చు.
సెలీనియం క్రోమ్ వెబ్ డ్రైవర్ని పరీక్షిస్తోంది
ఈ విభాగంలో, Chrome వెబ్ డ్రైవర్ పని చేస్తుందో లేదో పరీక్షించడానికి మీ మొట్టమొదటి సెలీనియం పైథాన్ స్క్రిప్ట్ను ఎలా సెటప్ చేయాలో నేను మీకు చూపుతాను.
ముందుగా, కొత్త పైథాన్ స్క్రిప్ట్ను సృష్టించండి ex02.py , మరియు స్క్రిప్ట్లో కోడ్ల కింది పంక్తులను టైప్ చేయండి.
నుండిసెలీనియందిగుమతివెబ్డ్రైవర్నుండిసెలీనియం.వెబ్డ్రైవర్.సాధారణ.కీలు దిగుమతికీలు
నుండి సమయం దిగుమతినిద్ర
బ్రౌజర్=వెబ్డ్రైవర్.క్రోమ్(అమలు చేయగల మార్గం='./drivers/chromedriver')
బ్రౌజర్.పొందండి('http://www.google.com')
నిద్ర(5)
బ్రౌజర్.వదిలేయండి()
మీరు పూర్తి చేసిన తర్వాత, దాన్ని సేవ్ చేయండి ex02.py పైథాన్ స్క్రిప్ట్.
నేను ఈ వ్యాసంలోని తరువాతి విభాగంలో కోడ్ని వివరిస్తాను.
కింది లైన్ సెలీనియం నుండి Chrome వెబ్ డ్రైవర్ని ఉపయోగించడానికి కాన్ఫిగర్ చేస్తుంది డ్రైవర్లు/ మీ ప్రాజెక్ట్ డైరెక్టరీ.
Chrome వెబ్ డ్రైవర్ సెలీనియంతో పని చేస్తుందో లేదో పరీక్షించడానికి, దీన్ని అమలు చేయండి ex02.py పైథాన్ స్క్రిప్ట్, కింది విధంగా:
$ పైథాన్ 3 ex01.పైGoogle Chrome వెబ్ బ్రౌజర్ స్వయంచాలకంగా Google.com ని సందర్శించాలి మరియు 5 సెకన్ల తర్వాత స్వయంగా మూసివేయాలి. ఇది సంభవించినట్లయితే, అప్పుడు సెలీనియం ఫైర్ఫాక్స్ జెక్కో డ్రైవర్ సరిగ్గా పనిచేస్తుంది.
సెలీనియంతో వెబ్ స్క్రాపింగ్ యొక్క ప్రాథమికాలు
నేను ఇప్పటి నుండి ఫైర్ఫాక్స్ వెబ్ బ్రౌజర్ని ఉపయోగిస్తాను. మీకు కావాలంటే మీరు Chrome ని కూడా ఉపయోగించవచ్చు.
ప్రాథమిక సెలీనియం పైథాన్ స్క్రిప్ట్ క్రింద స్క్రీన్ షాట్లో చూపిన స్క్రిప్ట్ లాగా ఉండాలి.
ముందుగా, సెలీనియం దిగుమతి చేసుకోండి వెబ్డ్రైవర్ నుండి సెలీనియం మాడ్యూల్.
తరువాత, దిగుమతి చేయండి కీలు నుండి selenium.webdriver.common.keys . మీరు సెలీనియం నుండి ఆటోమేట్ చేస్తున్న బ్రౌజర్కి కీబోర్డ్ కీ ప్రెస్లను పంపడానికి ఇది సహాయపడుతుంది.
కింది పంక్తి a ని సృష్టిస్తుంది బ్రౌజర్ ఫైర్ఫాక్స్ గెక్కో డ్రైవర్ (వెబ్డ్రైవర్) ఉపయోగించి ఫైర్ఫాక్స్ వెబ్ బ్రౌజర్ కోసం వస్తువు. మీరు ఈ వస్తువును ఉపయోగించి ఫైర్ఫాక్స్ బ్రౌజర్ చర్యలను నియంత్రించవచ్చు.
వెబ్సైట్ లేదా URL ని లోడ్ చేయడానికి (నేను వెబ్సైట్ను లోడ్ చేస్తున్నాను https://www.duckduckgo.com ), కాల్ చేయండి పొందండి () యొక్క పద్ధతి బ్రౌజర్ మీ ఫైర్ఫాక్స్ బ్రౌజర్లో వస్తువు.
సెలీనియం ఉపయోగించి, మీరు మీ పరీక్షలు వ్రాయవచ్చు, వెబ్ స్క్రాపింగ్ చేయవచ్చు మరియు చివరకు, ఉపయోగించి బ్రౌజర్ను మూసివేయవచ్చు నిష్క్రమించు () యొక్క పద్ధతి బ్రౌజర్ వస్తువు
పైన సెలీనియం పైథాన్ స్క్రిప్ట్ యొక్క ప్రాథమిక లేఅవుట్ ఉంది. మీరు మీ అన్ని సెలీనియం పైథాన్ స్క్రిప్ట్లలో ఈ పంక్తులను వ్రాస్తున్నారు.
ఉదాహరణ 1: వెబ్పేజీ శీర్షికను ముద్రించడం
సెలీనియం ఉపయోగించి చర్చించిన సులభమైన ఉదాహరణ ఇది. ఈ ఉదాహరణలో, మేము సందర్శించే వెబ్పేజీ యొక్క శీర్షికను మేము ప్రింట్ చేస్తాము.
క్రొత్త ఫైల్ను సృష్టించండి ex04.py మరియు కింది కోడ్ల లైన్లను అందులో టైప్ చేయండి.
నుండిసెలీనియందిగుమతివెబ్డ్రైవర్నుండిసెలీనియం.వెబ్డ్రైవర్.సాధారణ.కీలు దిగుమతికీలు
బ్రౌజర్=వెబ్డ్రైవర్.ఫైర్ఫాక్స్(అమలు చేయగల మార్గం='./drivers/geckodriver')
బ్రౌజర్.పొందండి('https://www.duckduckgo.com')
ముద్రణ('శీర్షిక: %s'% బ్రౌజర్.శీర్షిక)
బ్రౌజర్.వదిలేయండి()
మీరు పూర్తి చేసిన తర్వాత, ఫైల్ను సేవ్ చేయండి.
ఇక్కడ, ది browser.title సందర్శించిన వెబ్పేజీ యొక్క శీర్షికను యాక్సెస్ చేయడానికి మరియు ఉపయోగించబడుతుంది ముద్రణ() కన్సోల్లో టైటిల్ను ప్రింట్ చేయడానికి ఫంక్షన్ ఉపయోగించబడుతుంది.
అమలు చేసిన తర్వాత ex04.py స్క్రిప్ట్, ఇది తప్పక:
1) ఫైర్ఫాక్స్ తెరవండి
2) మీకు కావలసిన వెబ్పేజీని లోడ్ చేయండి
3) పేజీ యొక్క శీర్షికను పొందండి
4) శీర్షికను కన్సోల్లో ముద్రించండి
5) చివరకు, బ్రౌజర్ను మూసివేయండి
మీరు గమనిస్తే, ది ex04.py స్క్రిప్ట్ వెబ్పేజీ యొక్క శీర్షికను కన్సోల్లో చక్కగా ముద్రించింది.
$ పైథాన్ 3 ex04.పైఉదాహరణ 2: బహుళ వెబ్పేజీల శీర్షికలను ముద్రించడం
మునుపటి ఉదాహరణలో వలె, పైథాన్ లూప్ ఉపయోగించి బహుళ వెబ్పేజీల శీర్షికను ముద్రించడానికి మీరు అదే పద్ధతిని ఉపయోగించవచ్చు.
ఇది ఎలా పనిచేస్తుందో అర్థం చేసుకోవడానికి, కొత్త పైథాన్ స్క్రిప్ట్ను సృష్టించండి ex05.py మరియు స్క్రిప్ట్లో కింది కోడ్ లైన్లను టైప్ చేయండి:
నుండిసెలీనియందిగుమతివెబ్డ్రైవర్నుండిసెలీనియం.వెబ్డ్రైవర్.సాధారణ.కీలు దిగుమతికీలు
బ్రౌజర్=వెబ్డ్రైవర్.ఫైర్ఫాక్స్(అమలు చేయగల మార్గం='./drivers/geckodriver')
url లు= ['https://www.duckduckgo.com', 'https://linuxhint.com', 'https://yahoo.com']
కోసంurlలోurl లు:
బ్రౌజర్.పొందండి(url)
ముద్రణ('శీర్షిక: %s'% బ్రౌజర్.శీర్షిక)
బ్రౌజర్.వదిలేయండి()
మీరు పూర్తి చేసిన తర్వాత, పైథాన్ స్క్రిప్ట్ను సేవ్ చేయండి ex05.py .
ఇక్కడ, ది url లు జాబితా ప్రతి వెబ్పేజీ యొక్క URL ని ఉంచుతుంది.
కు కోసం లూప్ ద్వారా మళ్ళించడానికి ఉపయోగించబడుతుంది url లు జాబితా అంశాలు.
ప్రతి పునరావృతంలో, సెలీనియం బ్రౌజర్ను సందర్శించమని చెబుతుంది url మరియు వెబ్పేజీ యొక్క శీర్షికను పొందండి. సెలీనియం వెబ్పేజీ యొక్క శీర్షికను సేకరించిన తర్వాత, అది కన్సోల్లో ముద్రించబడుతుంది.
పైథాన్ స్క్రిప్ట్ను అమలు చేయండి ex05.py , మరియు మీరు ప్రతి వెబ్పేజీ యొక్క శీర్షికను చూడాలి url లు జాబితా
$ పైథాన్ 3 ex05.పైబహుళ వెబ్పేజీలు లేదా వెబ్సైట్లతో ఒకే పనిని సెలీనియం ఎలా చేయగలదో ఇది ఒక ఉదాహరణ.
ఉదాహరణ 3: వెబ్పేజీ నుండి డేటాను సేకరించడం
ఈ ఉదాహరణలో, సెలీనియం ఉపయోగించి వెబ్పేజీల నుండి డేటాను సేకరించే ప్రాథమికాలను నేను మీకు చూపుతాను. దీనిని వెబ్ స్క్రాపింగ్ అని కూడా అంటారు.
మొదట, సందర్శించండి Random.org ఫైర్ఫాక్స్ నుండి లింక్. దిగువ స్క్రీన్ షాట్లో మీరు చూడగలిగినట్లుగా, పేజీ యాదృచ్ఛిక స్ట్రింగ్ను రూపొందించాలి.
సెలీనియం ఉపయోగించి యాదృచ్ఛిక స్ట్రింగ్ డేటాను సంగ్రహించడానికి, మీరు డేటా యొక్క HTML ప్రాతినిధ్యాన్ని కూడా తెలుసుకోవాలి.
యాదృచ్ఛిక స్ట్రింగ్ డేటా HTML లో ఎలా ప్రాతినిధ్యం వహిస్తుందో చూడటానికి, యాదృచ్ఛిక స్ట్రింగ్ డేటాను ఎంచుకోండి మరియు కుడి మౌస్ బటన్ని (RMB) నొక్కండి మరియు దానిపై క్లిక్ చేయండి మూలకాన్ని తనిఖీ చేయండి (Q) , దిగువ స్క్రీన్ షాట్లో పేర్కొన్న విధంగా.
డేటా యొక్క HTML ప్రాతినిధ్యం ఇందులో ప్రదర్శించబడాలి ఇన్స్పెక్టర్ ట్యాబ్, మీరు దిగువ స్క్రీన్ షాట్లో చూడవచ్చు.
మీరు దానిపై కూడా క్లిక్ చేయవచ్చు చిహ్నాన్ని తనిఖీ చేయండి ( ) పేజీ నుండి డేటాను తనిఖీ చేయడానికి.
తనిఖీ ఐకాన్ () పై క్లిక్ చేయండి మరియు మీరు సేకరించాలనుకుంటున్న యాదృచ్ఛిక స్ట్రింగ్ డేటాపై హోవర్ చేయండి. డేటా యొక్క HTML ప్రాతినిధ్యం మునుపటిలా ప్రదర్శించబడాలి.
మీరు గమనిస్తే, యాదృచ్ఛిక స్ట్రింగ్ డేటా ఒక HTML లో చుట్టబడుతుంది కోసం ట్యాగ్ చేయండి మరియు క్లాసును కలిగి ఉంటుంది సమాచారం .
ఇప్పుడు మేము సేకరించాలనుకుంటున్న డేటా యొక్క HTML ప్రాతినిధ్యం మాకు తెలుసు, మేము సెలీనియం ఉపయోగించి డేటాను సేకరించేందుకు ఒక పైథాన్ స్క్రిప్ట్ను సృష్టిస్తాము.
కొత్త పైథాన్ స్క్రిప్ట్ను సృష్టించండి ex06.py మరియు స్క్రిప్ట్లో కింది కోడ్ల పంక్తులను టైప్ చేయండి
నుండిసెలీనియందిగుమతివెబ్డ్రైవర్నుండిసెలీనియం.వెబ్డ్రైవర్.సాధారణ.కీలు దిగుమతికీలు
బ్రౌజర్=వెబ్డ్రైవర్.ఫైర్ఫాక్స్(అమలు చేయగల మార్గం='./drivers/geckodriver')
బ్రౌజర్.పొందండి('https://www.random.org/strings/?num=1&len=20&digits
= on & upperalpha = on & loweralpha = on & unique = on & format = html & rnd = new ')
డేటా ఎలిమెంట్=బ్రౌజర్._css_selector ద్వారా_ఎలిమెంట్_ని కనుగొనండి('pre.data')
ముద్రణ(డేటా ఎలిమెంట్.టెక్స్ట్)
బ్రౌజర్.వదిలేయండి()
మీరు పూర్తి చేసిన తర్వాత, దాన్ని సేవ్ చేయండి ex06.py పైథాన్ స్క్రిప్ట్.
ఇక్కడ, ది browser.get () పద్ధతి ఫైర్ఫాక్స్ బ్రౌజర్లో వెబ్పేజీని లోడ్ చేస్తుంది.
ది browser.find_element_by_css_selector () పద్ధతి నిర్దిష్ట మూలకం కోసం పేజీ యొక్క HTML కోడ్ని శోధిస్తుంది మరియు దానిని అందిస్తుంది.
ఈ సందర్భంలో, మూలకం ఉంటుంది pre.data , ది కోసం తరగతి పేరు ఉన్న ట్యాగ్ సమాచారం .
క్రింద, ది pre.data మూలకం నిల్వ చేయబడింది డేటా ఎలిమెంట్ వేరియబుల్.
స్క్రిప్ట్ ఎంచుకున్న టెక్స్ట్ కంటెంట్ను ప్రింట్ చేస్తుంది pre.data మూలకం.
మీరు అమలు చేస్తే ex06.py పైథాన్ స్క్రిప్ట్, ఇది వెబ్పేజీ నుండి యాదృచ్ఛిక స్ట్రింగ్ డేటాను సేకరించాలి, మీరు దిగువ స్క్రీన్ షాట్లో చూడవచ్చు.
$ పైథాన్ 3 ex06.పైమీరు గమనిస్తే, ప్రతిసారీ నేను దానిని అమలు చేస్తాను ex06.py పైథాన్ స్క్రిప్ట్, ఇది వెబ్పేజీ నుండి వేరే యాదృచ్ఛిక స్ట్రింగ్ డేటాను సంగ్రహిస్తుంది.
ఉదాహరణ 4: వెబ్పేజీ నుండి డేటా జాబితాను సంగ్రహిస్తోంది
సెలీనియం ఉపయోగించి వెబ్పేజీ నుండి ఒకే డేటా మూలకాన్ని ఎలా సేకరించాలో మునుపటి ఉదాహరణ మీకు చూపించింది. ఈ ఉదాహరణలో, వెబ్పేజీ నుండి డేటా జాబితాను సేకరించేందుకు సెలీనియం ఎలా ఉపయోగించాలో నేను మీకు చూపుతాను.
మొదట, సందర్శించండి random-name-generator.info మీ ఫైర్ఫాక్స్ వెబ్ బ్రౌజర్ నుండి. మీరు పేజీని రీలోడ్ చేసిన ప్రతిసారీ ఈ వెబ్సైట్ పది యాదృచ్ఛిక పేర్లను ఉత్పత్తి చేస్తుంది, ఎందుకంటే మీరు దిగువ స్క్రీన్ షాట్లో చూడవచ్చు. మా లక్ష్యం సెలీనియం ఉపయోగించి ఈ యాదృచ్ఛిక పేర్లను సేకరించడం.
మీరు పేరు జాబితాను మరింత దగ్గరగా పరిశీలిస్తే, అది ఆర్డర్ చేసిన జాబితా అని మీరు చూడవచ్చు ( చనిపోతారు ట్యాగ్). ది చనిపోతారు ట్యాగ్లో తరగతి పేరు కూడా ఉంటుంది పేర్ల జాబితా . ప్రతి యాదృచ్ఛిక పేర్లు జాబితా అంశంగా సూచించబడతాయి ( వద్ద ట్యాగ్) లోపల చనిపోతారు ట్యాగ్.
ఈ యాదృచ్ఛిక పేర్లను సంగ్రహించడానికి, కొత్త పైథాన్ స్క్రిప్ట్ను సృష్టించండి ex07.py మరియు స్క్రిప్ట్లో కింది కోడ్ల పంక్తులను టైప్ చేయండి.
నుండిసెలీనియందిగుమతివెబ్డ్రైవర్నుండిసెలీనియం.వెబ్డ్రైవర్.సాధారణ.కీలు దిగుమతికీలు
బ్రౌజర్=వెబ్డ్రైవర్.ఫైర్ఫాక్స్(అమలు చేయగల మార్గం='./drivers/geckodriver')
బ్రౌజర్.పొందండి('http://random-name-generator.info/')
పేర్ల జాబితా=బ్రౌజర్.Cc_selector ద్వారా_ఎలిమెంట్స్_ని కనుగొనండి('ol.nameList li')
కోసంపేరులోపేర్ల జాబితా:
ముద్రణ(పేరుటెక్స్ట్)
బ్రౌజర్.వదిలేయండి()
మీరు పూర్తి చేసిన తర్వాత, దాన్ని సేవ్ చేయండి ex07.py పైథాన్ స్క్రిప్ట్.
ఇక్కడ, ది browser.get () పద్ధతి ఫైర్ఫాక్స్ బ్రౌజర్లో యాదృచ్ఛిక పేరు జనరేటర్ వెబ్పేజీని లోడ్ చేస్తుంది.
ది browser.find_elements_by_css_selector () పద్ధతి CSS సెలెక్టర్ని ఉపయోగిస్తుంది ol.nameList లి అన్ని కనుగొనడానికి వద్ద లోపల అంశాలు చనిపోతారు తరగతి పేరు ఉన్న ట్యాగ్ పేర్ల జాబితా . నేను ఎంచుకున్నవన్నీ నిల్వ చేసాను వద్ద లోని అంశాలు పేర్ల జాబితా వేరియబుల్.
కు కోసం లూప్ ద్వారా మళ్ళించడానికి ఉపయోగించబడుతుంది పేర్ల జాబితా యొక్క జాబితా వద్ద అంశాలు. ప్రతి పునరుక్తిలో, కంటెంట్ వద్ద మూలకం కన్సోల్లో ముద్రించబడింది.
మీరు అమలు చేస్తే ex07.py పైథాన్ స్క్రిప్ట్, ఇది వెబ్పేజీ నుండి అన్ని యాదృచ్ఛిక పేర్లను పొందుతుంది మరియు స్క్రీన్పై ప్రింట్ చేస్తుంది, మీరు దిగువ స్క్రీన్ షాట్లో చూడవచ్చు.
$ పైథాన్ 3 ex07.పైమీరు స్క్రిప్ట్ను రెండోసారి రన్ చేస్తే, మీరు దిగువ స్క్రీన్ షాట్లో చూడగలిగినట్లుగా, యాదృచ్ఛిక వినియోగదారు పేర్ల కొత్త జాబితాను అందించాలి.
ఉదాహరణ 5: ఫారం సమర్పించడం - DuckDuckGo లో శోధించడం
ఈ ఉదాహరణ మొదటి ఉదాహరణ వలె చాలా సులభం. ఈ ఉదాహరణలో, నేను DuckDuckGo సెర్చ్ ఇంజిన్ను సందర్శించి, ఆ పదాన్ని సెర్చ్ చేస్తాను సెలీనియం hq సెలీనియం ఉపయోగించి.
ముందుగా, సందర్శించండి DuckDuckGo శోధన ఇంజిన్ ఫైర్ఫాక్స్ వెబ్ బ్రౌజర్ నుండి.
మీరు శోధన ఇన్పుట్ ఫీల్డ్ని తనిఖీ చేస్తే, దానికి ఐడి ఉండాలి search_form_input_homepage , మీరు దిగువ స్క్రీన్ షాట్లో చూడవచ్చు.
ఇప్పుడు, కొత్త పైథాన్ స్క్రిప్ట్ను సృష్టించండి ex08.py మరియు స్క్రిప్ట్లో కింది కోడ్ల పంక్తులను టైప్ చేయండి.
నుండిసెలీనియందిగుమతివెబ్డ్రైవర్నుండిసెలీనియం.వెబ్డ్రైవర్.సాధారణ.కీలు దిగుమతికీలు
బ్రౌజర్=వెబ్డ్రైవర్.ఫైర్ఫాక్స్(అమలు చేయగల మార్గం='./drivers/geckodriver')
బ్రౌజర్.పొందండి('https://duckduckgo.com/')
శోధన ఇన్పుట్=బ్రౌజర్.ఐడి_ని కనుగొనండి('search_form_input_homepage')
శోధన ఇన్పుట్.పిల్లులు_ పంపండి('సెలీనియం hq'+ కీలు.ఎంటర్)
మీరు పూర్తి చేసిన తర్వాత, దాన్ని సేవ్ చేయండి ex08.py పైథాన్ స్క్రిప్ట్.
ఇక్కడ, ది browser.get () ఈ పద్ధతి ఫైర్ఫాక్స్ వెబ్ బ్రౌజర్లో డక్డక్గో సెర్చ్ ఇంజిన్ హోమ్పేజీని లోడ్ చేస్తుంది.
ది browser.find_element_by_id () పద్ధతి ఐడితో ఇన్పుట్ మూలకాన్ని ఎంచుకుంటుంది search_form_input_homepage మరియు దానిని నిల్వ చేస్తుంది శోధన ఇన్పుట్ వేరియబుల్.
ది searchInput.send_keys () కీ ప్రెస్ డేటాను ఇన్పుట్ ఫీల్డ్కు పంపడానికి ఈ పద్ధతి ఉపయోగించబడుతుంది. ఈ ఉదాహరణలో, ఇది స్ట్రింగ్ను పంపుతుంది సెలీనియం hq , మరియు ఎంటర్ కీని ఉపయోగించి ప్రెస్ చేయబడుతుంది కీలు స్థిరమైన.
డక్డక్గో సెర్చ్ ఇంజిన్ ఎంటర్ కీ ప్రెస్ని అందుకున్న వెంటనే ( కీలు ), ఇది ఫలితాన్ని శోధించి ప్రదర్శిస్తుంది.
అమలు చేయండి ex08.py పైథాన్ స్క్రిప్ట్, కింది విధంగా:
$ పైథాన్ 3 ex08.పైమీరు గమనిస్తే, ఫైర్ఫాక్స్ వెబ్ బ్రౌజర్ డక్డక్గో సెర్చ్ ఇంజిన్ను సందర్శించింది.
ఇది స్వయంచాలకంగా టైప్ చేయబడింది సెలీనియం hq శోధన టెక్స్ట్ బాక్స్లో.
బ్రౌజర్ ఎంటర్ కీ ప్రెస్ అందుకున్న వెంటనే ( కీలు ), ఇది శోధన ఫలితాన్ని ప్రదర్శిస్తుంది.
ఉదాహరణ 6: W3Schools.com లో ఫారం సమర్పించడం
ఉదాహరణ 5 లో, DuckDuckGo శోధన ఇంజిన్ ఫారమ్ సమర్పణ సులభం. మీరు చేయాల్సిందల్లా ఎంటర్ కీని నొక్కడం. కానీ అన్ని రూపాల సమర్పణలకు ఇది ఉండదు. ఈ ఉదాహరణలో, నేను మీకు మరింత క్లిష్టమైన ఫారమ్ హ్యాండ్లింగ్ని చూపుతాను.
మొదట, సందర్శించండి W3Schools.com యొక్క HTML ఫారమ్ల పేజీ ఫైర్ఫాక్స్ వెబ్ బ్రౌజర్ నుండి. పేజీ లోడ్ అయిన తర్వాత, మీరు ఒక ఉదాహరణ ఫారమ్ను చూడాలి. ఈ ఉదాహరణలో మేము సమర్పించే ఫారం ఇది.
మీరు ఫారమ్ని తనిఖీ చేస్తే, ది మొదటి పేరు ఇన్పుట్ ఫీల్డ్లో ఐడి ఉండాలి పేరు , ది చివరి పేరు ఇన్పుట్ ఫీల్డ్లో ఐడి ఉండాలి పేరు , ఇంకా సమర్పించు బటన్ కలిగి ఉండాలి రకం సమర్పించు , మీరు దిగువ స్క్రీన్ షాట్లో చూడవచ్చు.
సెలీనియం ఉపయోగించి ఈ ఫారమ్ను సమర్పించడానికి, కొత్త పైథాన్ స్క్రిప్ట్ను సృష్టించండి ex09.py మరియు స్క్రిప్ట్లో కింది కోడ్ల పంక్తులను టైప్ చేయండి.
నుండిసెలీనియందిగుమతివెబ్డ్రైవర్నుండిసెలీనియం.వెబ్డ్రైవర్.సాధారణ.కీలు దిగుమతికీలు
బ్రౌజర్=వెబ్డ్రైవర్.ఫైర్ఫాక్స్(అమలు చేయగల మార్గం='./drivers/geckodriver')
బ్రౌజర్.పొందండి('https://www.w3schools.com/html/html_forms.asp')
పేరు=బ్రౌజర్.ఐడి_ని కనుగొనండి('పేరు')
పేరు.స్పష్టమైన()
పేరు.పిల్లులు_ పంపండి('షహ్రియార్')
పేరు=బ్రౌజర్.ఐడి_ని కనుగొనండి('పేరు')
పేరుస్పష్టమైన()
పేరుపిల్లులు_ పంపండి('షోవోన్')
సమర్పించు బటన్=బ్రౌజర్._css_selector ద్వారా_ఎలిమెంట్_ని కనుగొనండి('ఇన్పుట్ [type =' submit ']')
సమర్పించు బటన్.పిల్లులు_ పంపండి(కీలు.ఎంటర్)
మీరు పూర్తి చేసిన తర్వాత, దాన్ని సేవ్ చేయండి ex09.py పైథాన్ స్క్రిప్ట్.
ఇక్కడ, ది browser.get () పద్ధతి ఫైర్ఫాక్స్ వెబ్ బ్రౌజర్లో W3 స్కూల్స్ HTML ఫారమ్ల పేజీని తెరుస్తుంది.
ది browser.find_element_by_id () పద్ధతి ఐడి ద్వారా ఇన్పుట్ ఫీల్డ్లను కనుగొంటుంది పేరు మరియు పేరు మరియు అది వాటిని నిల్వ చేస్తుంది పేరు మరియు పేరు వేరియబుల్స్, వరుసగా.
ది fname.clear () మరియు lname.clear () పద్ధతులు డిఫాల్ట్ మొదటి పేరును క్లియర్ చేస్తాయి (జాన్) పేరు విలువ మరియు చివరి పేరు (డో) పేరు ఇన్పుట్ ఫీల్డ్ల నుండి విలువ.
ది fname.send_keys () మరియు lname.send_keys () పద్ధతుల రకం షహ్రియార్ మరియు షోవన్ లో మొదటి పేరు మరియు చివరి పేరు వరుసగా ఇన్పుట్ ఫీల్డ్లు.
ది browser.find_element_by_css_selector () పద్ధతి ఎంచుకుంటుంది సమర్పించు బటన్ రూపం మరియు దానిని నిల్వ చేస్తుంది సమర్పించు బటన్ వేరియబుల్.
ది submitButton.send_keys () పద్ధతి ఎంటర్ కీ ప్రెస్ను పంపుతుంది ( కీలు ) కు సమర్పించు బటన్ రూపం యొక్క. ఈ చర్య ఫారమ్ను సమర్పిస్తుంది.
అమలు చేయండి ex09.py పైథాన్ స్క్రిప్ట్, కింది విధంగా:
$ పైథాన్ 3 ex09.పైమీరు గమనిస్తే, ఫారమ్ స్వయంచాలకంగా సరైన ఇన్పుట్లతో సమర్పించబడుతుంది.
ముగింపు
పైథాన్ 3 లోని సెలీనియం బ్రౌజర్ టెస్టింగ్, వెబ్ ఆటోమేషన్ మరియు వెబ్ స్క్రాపింగ్ లైబ్రరీలతో ప్రారంభించడానికి ఈ కథనం మీకు సహాయం చేస్తుంది. మరింత సమాచారం కోసం, చూడండి అధికారిక సెలీనియం పైథాన్ డాక్యుమెంటేషన్ .