python爬取招聘网信息并保存为csv文件

我们以猎聘网为例

一、打开网站查找信息


进入后搜索想要爬取的岗位信息,右键选择 “检查” 进入开发者界面


点击右上角的network,选择doc

然后点击图中的搜索按钮,输入想要爬取的岗位名称,然后刷新页面,选择搜索下边的第二个


这个时候我们看到有我们需要的url,从中也可知网站的请求方式为get请求,我们也得用get请求!

部分代码解析:

1、导入模块
import parsel
import requests
import csv
2、用url放我们的网址
url = 'https://www.liepin.com/zhaopin/'
3、定义data放我们的参数

这个是网页中payload的参数,也就是url中问号后面的参数

data = {'inputFrom': 'www_index','workYearCode': '0','key': 'python','scene': 'input','ckId': 'kfpt1emhvkrshc9o4h2xquxd74pfihmb',
}
4、用headers放我们的请求头

请求头在网页中Request headers的最后面

headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) ''Chrome/99.0.4844.74 Safari/537.36 Edg/99.0.1150.46 '
}
5、用response接收我们发出的请求

网页中用的是get请求,我们也得用get请求

response = requests.get(url=url, headers=headers, params=data)

选择网页中的css

selector = parsel.Selector(response.text)
6、把最大的标签提取出来
lis = selector.css('.left-list-box .job-list-item')
7、以最大的标签为基础,遍历所需要的信息
for li in lis:title = li.css('.job-title-box div:nth-child(1)::attr(title)').get()  # 标题city = li.css('.job-dq-box .ellipsis-1::text').get()  # 城市money = li.css('.job-detail-header-box .job-salary::text').get()  # 薪资tag_list = li.css('.job-labels-box .labels-tag::text').getall()  # 标签exp = tag_list[0]  # 经验要求edu = tag_list[1]  # 学历要求tag = ','.join(tag_list[2:])company_name = li.css('.company-name::text').get()  # 公司名称company_list = li.css('.company-tags-box span::text').getall()  # 公司标签company_tag = ','.join(company_list)href = li.css('.job-detail-box a:nth-child(1)::attr(href)').get()  # 详情页

','.join()用逗号把列表里面的元素合并成一个字符串数据

定义一个dit字典存放所需要的信息

    dit = {'标题': title,'城市': city,'薪资': money,'经验要求': exp,'学历要求': edu,'职位标签': tag,'公司名称': company_name,'公司标签': company_tag,'详情页': href,}
8、将获得的数据进行保存
f = open('招聘.csv', mode='a', encoding='utf-8', newline='')
css_write = csv.DictWriter(f, fieldnames=['标题','城市','薪资','经验要求','学历要求','职位标签','公司名称','公司标签','详情页',
])
css_write.writerow(dit)  # 写入表头
# 打印在python中显示print(title, city, money, exp, edu, tag, company_name, company_tag, href)
9、完整代码
import parsel
import requests
import csvf = open('招聘.csv', mode='a', encoding='utf-8', newline='')
css_write = csv.DictWriter(f, fieldnames=['标题','城市','薪资','经验要求','学历要求','职位标签','公司名称','公司标签','详情页',
])url = 'https://www.liepin.com/zhaopin/'data = {'inputFrom': 'www_index','workYearCode': '0','key': 'python','scene': 'input','ckId': 'kfpt1emhvkrshc9o4h2xquxd74pfihmb',
}headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) ''Chrome/99.0.4844.74 Safari/537.36 Edg/99.0.1150.46 '
}response = requests.get(url=url, headers=headers, params=data)selector = parsel.Selector(response.text)
# 把最大的标签提取出来
lis = selector.css('.left-list-box .job-list-item')for li in lis:title = li.css('.job-title-box div:nth-child(1)::attr(title)').get()  # 标题city = li.css('.job-dq-box .ellipsis-1::text').get()  # 城市money = li.css('.job-detail-header-box .job-salary::text').get()  # 薪资tag_list = li.css('.job-labels-box .labels-tag::text').getall()  # 标签exp = tag_list[0]  # 经验要求edu = tag_list[1]  # 学历要求# ','.join()用逗号把列表里面的元素合并成一个字符串数据tag = ','.join(tag_list[2:])company_name = li.css('.company-name::text').get()  # 公司名称company_list = li.css('.company-tags-box span::text').getall()  # 公司标签company_tag = ','.join(company_list)href = li.css('.job-detail-box a:nth-child(1)::attr(href)').get()  # 详情页dit = {'标题': title,'城市': city,'薪资': money,'经验要求': exp,'学历要求': edu,'职位标签': tag,'公司名称': company_name,'公司标签': company_tag,'详情页': href,}css_write.writerow(dit)  # 写入表头# 打印print(title, city, money, exp, edu, tag, company_name, company_tag, href)

python爬取招聘网信息并保存为csv文件相关推荐

  1. 用python爬取基金网信息数据,保存到表格,并做成四种简单可视化。(爬虫之路,永无止境!)

    用python爬取基金网信息数据,保存到表格,并做成四种简单可视化.(爬虫之路,永无止境!) 上次 2021-07-07写的用python爬取腾讯招聘网岗位信息保存到表格,并做成简单可视化. 有的人留 ...

  2. 使用Python爬取知网信息

    使用Python爬取知网信息 import requests from urllib import request from lxml import etree import re import cs ...

  3. 用python爬取网站_「自如网」关于用python爬取自如网信息的价格问题(已解决) - seo实验室...

    自如网 ###这是一篇求助文,我能获取图片并变成字符串,但是无法获取位移量### 前两坛突发奇想想要爬取自如网的租房数据,本来以为能够请求+美丽+ re能全部搞定,没想到这个网站的反爬机制有点让我搞不 ...

  4. 关于用python爬取自如网信息的价格问题(已解决)

    ###这是一篇求助文,我能获取图片并变成字符串,但是无法获取位移量### 前两坛突发奇想想要爬取自如网的租房数据,本来以为能够请求+美丽+ re能全部搞定,没想到这个网站的反爬机制有点让我搞不定先贴个 ...

  5. Python爬取知网信息——Python+selenium爬取知网信息(文献名,作者,来源,发表日期,文献类型)

    # -*- coding: utf-8 -*- #时间:2019.5.1 #运行环境Python 3.* ''' 1.运行此代码前需要先下载Chrome浏览器,去百度搜索下载 2.我是利用seleni ...

  6. 使用python爬取中国电影票房数据并写入csv文件

    环境 PyCharm 2021.1.2 x64 爬取的目标网页 一.代码 import requests from bs4 import BeautifulSoup url = "http: ...

  7. Python爬取豆瓣网影评展示

    Python爬取豆瓣网影评展示 需要的库文件 requests beautifulsoup wordcloud jieba matplotlib 本文思想 1.访问指定的网页 #获取指定url的内容 ...

  8. Python Scrapy爬虫框架爬取51job职位信息并保存至数据库

    Python Scrapy爬虫框架爬取51job职位信息并保存至数据库 -------------------------------- 版权声明:本文为CSDN博主「杠精运动员」的原创文章,遵循CC ...

  9. python爬取当当网的书籍信息并保存到csv文件

    python爬取当当网的书籍信息并保存到csv文件 依赖的库: requests #用来获取页面内容 BeautifulSoup #opython3不能安装BeautifulSoup,但可以安装Bea ...

  10. 教你用python实现34行代码爬取东方财富网信息,爬虫之路,永无止境!!

    教你用python实现34行代码爬取东方财富网信息,爬虫之路,永无止境!! 代码展示: 开发环境: windows10 python3.6 开发工具: pycharm weddriver 库: sel ...

最新文章

  1. Git之提交项目到远程github
  2. 使用Nomad构建弹性基础架构:计划和自我修复
  3. 神策数据首度公开「电商行业事件设计埋点模板」
  4. 【译】From Smart Contracts to Courts with not so Smart Judges
  5. springboot获取多个请求参数_springboot获取URL请求参数的多种方式
  6. 量子计算机接口,量子计算机接口架构设计与研究
  7. INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113
  8. 02.C(数据类型与运算符)
  9. ES6新特性_浏览器使用ES6模块化引入模块---JavaScript_ECMAScript_ES6-ES11新特性工作笔记042
  10. 谷歌Apps vs.微软Office
  11. Linux C - symlink 和 readlink - 符号链接
  12. 如何实现现实人脸照片的编码
  13. linux安装中文输入法
  14. CSDN下载码如何使用以及免积分下载
  15. 字符图形自动生成(C语言)
  16. Effective Modern C++笔记汇总
  17. The size of tensor a (4) must match the size of tensor b (3) at non-singleton dimension 0 维度不匹配
  18. UE-c++规范命名
  19. Nginx软件介绍及下载地址
  20. scala详细笔记(七)scala集合练习题 [函数练习题][scala案例][scala练习]

热门文章

  1. 怎么设置邮箱自动回复?如何设置自动回复功能?
  2. android 录屏功能,Android开发如何实现录屏小功能
  3. 读《富爸爸穷爸爸》有感
  4. 通信网络与IP网络底层传输技术梳理(SONET/SDH/OTN/ATM/Ethernet/MPLS/PTN...)
  5. [网络性能测试学习笔记] 测试AX3 Pro WiFi6无线路由器的系统转发能力(硬件转发交换能力L23吞吐量,L47应用层能力-最大可支持设备用户数,并发连接数等)
  6. 2022年电工(初级)考试报名及电工(初级)最新解析
  7. pathogen插件管理器学习笔记
  8. 每日新闻丨工信部发布绿色数据中心技术产品目录;阿里巴巴核心系统100%上云;苹果产品路线图曝光...
  9. Kata Container 2.x 和 3.0 安装,内核编译,镜像制作
  10. xp系统怎么更改计算机用户名和密码,如何解决用户不能更改WindowsXP系统密码