请用python爬取牛客网站招聘信息1000条id包含:编号、公司名称、学历要求、工作类型、工作名称、薪资、发布时间、截止时间、城市编码、公司规模、福利、岗位职责、地区、工作经验等信息,并以表格形式写入文本文件
时间: 2023-10-03 16:04:21 浏览: 90
抓取某人力资源网站的招聘信息-爬虫python代码
好的,首先需要安装requests、BeautifulSoup和pandas等库,可以使用以下命令进行安装:
```
pip install requests
pip install beautifulsoup4
pip install pandas
```
然后,可以使用以下代码进行爬取和处理数据:
```python
import requests
from bs4 import BeautifulSoup
import pandas as pd
# 设置请求头
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.3"}
# 定义函数,用于获取招聘信息
def get_job_info():
job_list = []
for i in range(1, 21):
url = "https://www.nowcoder.com/job/center?recruitType=1&page=" + str(i)
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, "html.parser")
jobs = soup.select(".job-list .job-list-item")
for job in jobs:
job_dict = {}
job_dict["编号"] = job.select(".job-list-item-top .job-list-item-title a")[0]["href"].split("/")[-1]
job_dict["公司名称"] = job.select(".job-list-item-top .job-list-item-title a")[0].text.strip()
job_dict["学历要求"] = job.select(".job-list-item-top .job-list-item-desc span")[0].text.strip()
job_dict["工作类型"] = job.select(".job-list-item-top .job-list-item-desc span")[1].text.strip()
job_dict["工作名称"] = job.select(".job-list-item-top .job-list-item-desc span")[2].text.strip()
job_dict["薪资"] = job.select(".job-list-item-top .job-list-item-desc span")[3].text.strip()
job_dict["发布时间"] = job.select(".job-list-item-top .job-list-item-publish-time")[0].text.strip()
job_dict["截止时间"] = job.select(".job-list-item-top .job-list-item-deadline")[0].text.strip()
job_dict["城市编码"] = job.select(".job-list-item-top .job-list-item-city")[0]["data-code"]
job_dict["公司规模"] = job.select(".job-list-item-top .job-list-item-company-size")[0].text.strip()
job_dict["福利"] = ",".join([x.text for x in job.select(".job-list-item-bottom .job-list-item-tag")])
job_dict["岗位职责"] = job.select(".job-list-item-content")[0].text.strip()
job_dict["地区"] = job.select(".job-list-item-bottom .job-list-item-area")[0].text.strip()
job_dict["工作经验"] = job.select(".job-list-item-bottom .job-list-item-experience")[0].text.strip()
job_list.append(job_dict)
return job_list
# 调用函数,获取招聘信息
job_list = get_job_info()
# 将数据转换为DataFrame,并写入文本文件
df = pd.DataFrame(job_list)
df.to_csv("job_info.txt", sep="\t", index=False)
```
这样就可以将牛客网站招聘信息爬取并写入文本文件了。注意,由于牛客网站反爬虫机制比较强,可能需要适当调整代码中的请求头信息。
阅读全文