You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用BeautifulSoup从HTML元素中正确提取薪资信息?

解决薪资提取问题

你当前用attribute_snippet拿到职位类型,说明这个class并非薪资专属。要正确提取薪资,得先通过浏览器开发者工具(F12)定位薪资元素的具体特征,以下是几种通用方案:

方案1:定位薪资专属的class/属性

大部分招聘网站会给薪资元素分配专属class或属性,比如常见的salary-snippet、estimated-salary,或者带data-testid标识的元素。示例代码:

# 示例:假设薪资元素class是salary-snippet
salary_element = job.find('div', class_='salary-snippet')
# 或者通过data-testid属性定位
salary_element = job.find(attrs={"data-testid": "salary-info"})

if salary_element:
    salaries.append(salary_element.text.strip())
else:
    salaries.append('薪资未公开')

方案2:通过文本特征筛选

如果没有专属标识,可筛选包含薪资关键词(如“¥”、“$”、“K”、“年”、“月”)的元素:

salary = '薪资未公开'
# 遍历当前job下所有可能的文本元素
for elem in job.find_all(['div', 'span']):
    text = elem.text.strip()
    if any(key in text for key in ['¥', '$', 'K', '年', '月', '小时']):
        salary = text
        break
salaries.append(salary)

调整后的完整代码示例

job_elements = soup.find_all('div', class_='job_seen_beacon')
job_titles = []
company_names = []
locations = []
job_types = []
salaries = []

for job in job_elements:
    # 提取职位标题
    title = job.find('h2', class_='jobTitle jobTitle-newJob css-bdjp2m eu4oa1w0')
    job_titles.append(title.text.strip() if title else 'No job title')
    
    # 提取公司信息
    company = job.find('div', class_='heading6 company_location tapItem-gutter companyInfo')
    company_names.append(company.text.strip() if company else 'No company info')
    
    # 提取地点
    location = job.find('div', 'companyLocation')
    locations.append(location.text.strip() if location else 'No location')
    
    # 提取职位类型
    job_type = job.find('div', class_='metadata')
    job_types.append(job_type.text.strip() if job_type else 'Not specified')
    
    # 提取薪资(用方案1示例,根据实际结构调整)
    salary_element = job.find('div', class_='salary-snippet')  # 替换成你找到的薪资class
    salaries.append(salary_element.text.strip() if salary_element else '薪资未公开')

注意:实际使用时,一定要用浏览器开发者工具查看目标薪资元素的真实class或属性,替换代码中的选择器,因为网站HTML结构可能随时变化。

内容的提问来源于stack exchange,提问作者Donatus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 20:33:21