python爬取boss直聘数据华为竞赛题
时间: 2023-10-01 13:12:28 浏览: 148
首先,你需要安装 `requests` 和 `beautifulsoup4` 库。可以使用以下命令进行安装:
```
pip install requests beautifulsoup4
```
然后,你需要了解如何使用 `requests` 库发送 HTTP 请求,并使用 `beautifulsoup4` 库解析 HTML 页面。
以下是一个简单的代码示例,可以爬取 boss 直聘上的某个关键字搜索结果页的职位信息:
```python
import requests
from bs4 import BeautifulSoup
# 设置请求头,模拟浏览器访问
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299'
}
# 构造请求 URL
keyword = '华为'
url = f'https://www.zhipin.com/job_detail/?query={keyword}&city=101010100&industry=&position='
# 发送 GET 请求并获取响应内容
response = requests.get(url, headers=headers)
html = response.text
# 解析 HTML 页面
soup = BeautifulSoup(html, 'html.parser')
job_list = soup.select('.job-list > ul > li')
# 遍历职位列表,提取职位信息并打印
for job in job_list:
job_name = job.select_one('.job-title').get_text().strip()
company_name = job.select_one('.company-text > h3').get_text().strip()
salary = job.select_one('.salary').get_text().strip()
print(f'{company_name} | {job_name} | {salary}')
```
这段代码会输出类似如下格式的职位信息:
```
深圳市华为终端有限公司 | 5G 芯片中高级物理验证工程师 | 20k-40k
深圳市华为终端有限公司 | 5G 软件开发工程师 | 20k-40k
...
```
你可以根据自己的需求修改代码,以获取更多关于职位的信息。
阅读全文