Python selenium如何从网站中获取值列表

2024-10-02 14:24:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我在这个网站上有一个工作角色列表,我想从中挑选。我使用的代码如下:

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)

通过这段代码,我能够检索到第一个角色:业务分析师-IB信用风险变更

我无法检索其他角色,有人能帮忙吗

谢谢


Tags: 代码texthttpsdivcom角色列表get
2条回答

在本例中,所有作业名称都有两个CSS类jobPropertyjobtitle

因此,既然您想要所有作业,我建议您通过CSS selector进行选择

以下示例应该有效:

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)

如果您想使用xPath,您已经非常接近了。xPath只选择第一个li元素(li[1])。通过将其更改为li,它将找到所有匹配的XPath:

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)

相关问题 更多 >