python爬取招聘网站信息

本文介绍了一个使用Python编写的脚本,它能抓取智联招聘网站的招聘信息,包括岗位名称、公司信息等,并保存为CSV文件。用户可以输入关键词和页数进行定制搜索。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

废话不多说,直接上代码,开箱即用。该文件抓取的是智联招聘网站的招聘信息,可以根据需要设置输入搜索关键词和查找页数,就会得到结果,可以搜索到每个岗位的岗位名称、公司名称、学历要求、公司规模、福利待遇、行业、薪资、经验、发布时间、详情页等信息,并在同目录下生成相应的文件“{keyword}zhilian”。

import requests
import json
import re
import pprint
import csv
from time import sleep
from random import randint

keyword = input('请输入你想要搜索的岗位: ')
pages = input('请输入你想要爬取的页数: ')

with open(f'{keyword}zhilian.csv', 'w', encoding='utf-8', newline='') as filename:
    dictwriter = csv.DictWriter(filename, fieldnames=[
        '岗位名称',
        '公司名称',
        '学历',
        '公司规模',
        '地区',
        '福利待遇',
        '行业',
        '薪资',
        '经验',
        '发布时间',
        '详情页',
    ])
    dictwriter.writeheader()
    for page in range(1, int(pages)):
        sleep(randint(3, 8))
        print(
            f'========================================正在采集第{page}页的数据内容============================================')
        url = f'https://sou.zhaopin.com/?jl=765&kw={keyword}&p={pages}'
        headers = {
            # 输入网址上的headers即可,点击F12发送请求在network中的response就可查看到
        }
        response = requests.get(url=url, headers=headers)

        html_data = re.findall('"locationInfo":{},"selectCity":"","positionList":(.*?),"isSupportBatchDelivery":true,',
                               response.text)[0]

        json_data = json.loads(html_data)

        for index in json_data:
            dit = {
                '岗位名称': index['name'],
                '公司名称': index['companyName'],
                '学历': index['education'],
                '公司规模': index['companySize'],
                '地区': index['cityDistrict'],
                '福利待遇': index['positionHighlight'],
                '行业': index['industryName'],
                '薪资': index['salary60'],
                '经验': index['workingExp'],
                '发布时间': index['publishTime'],
                '详情页': index['positionURL'],

            }
            dictwriter.writerow(dit)
            print(dit)

运行结果截图如下所示:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值