मेरे पास इस वेबसाइट पर नौकरी की भूमिकाओं की एक सूची है जिसे मैं स्क्रैप करना चाहता हूं। मैं जिस कोड का उपयोग कर रहा हूं वह नीचे है:

driver.get('https://jobs.ubs.com/TGnewUI/Search/home/HomeWithPreLoad?partnerid=25008&siteid=5012&PageType=searchResults&SearchType=linkquery&LinkID=6017#keyWordSearch=&locationSearch=')
job_roles = driver.find_elements(By.XPATH, '/html/body/div[2]/div[2]/div[1]/div[6]/div[3]/div/div/div[5]/div[2]/div/div[1]/ul/li[1]/div[2]/div[1]/span/a')

for job_roles in job_roles:
    text = job_roles.text
    print(text)

इस कोड के साथ, मैं पहली भूमिका को पुनः प्राप्त करने में सक्षम हूं जो है: व्यापार विश्लेषक - आईबी क्रेडिट जोखिम परिवर्तन

मैं अन्य भूमिकाओं को पुनः प्राप्त करने में असमर्थ हूं, क्या कोई कृपया सहायता कर सकता है

धन्यवाद

1
S1KRR 3 जिंदा 2021, 03:47

2 जवाब

सबसे बढ़िया उत्तर

इस मामले में सभी नौकरी के नामों में दो सीएसएस वर्ग jobProperty और jobtitle हैं।

इसलिए, चूंकि आप सभी कार्य चाहते हैं, इसलिए मैं सीएसएस चयनकर्ता

निम्नलिखित उदाहरण काम करना चाहिए:

driver.get('https://jobs.ubs.com/TGnewUI/Search/home/HomeWithPreLoad?partnerid=25008&siteid=5012&PageType=searchResults&SearchType=linkquery&LinkID=6017#keyWordSearch=&locationSearch=')

job_roles = driver.find_elements_by_css_selector('.jobProperty.jobtitle')
for job_roles in job_roles:
    text = job_roles.text
    print(text)
0
costaparas 3 जिंदा 2021, 04:01

यदि आप xPath का उपयोग करना चाहते हैं, तो आप बहुत करीब थे। आपका xPath विशेष रूप से केवल प्रथम li तत्व (li[1]) का चयन करता है। इसे केवल li में बदलने पर, यह सभी मेल खाने वाले xPaths को खोज लेगा:

driver.get('https://jobs.ubs.com/TGnewUI/Search/home/HomeWithPreLoad?partnerid=25008&siteid=5012&PageType=searchResults&SearchType=linkquery&LinkID=6017#keyWordSearch=&locationSearch=')
job_roles = driver.find_elements(By.XPATH, '/html/body/div[2]/div[2]/div[1]/div[6]/div[3]/div/div/div[5]/div[2]/div/div[1]/ul/li/div[2]/div[1]/span/a')

for job_roles in job_roles:
    text = job_roles.text
    print(text)
0
mandulaj 3 जिंदा 2021, 04:09