51job,爬虫
https://search.51job.com/list/180200,000000,0000,32,9,99,%25E5%2589%258D%25E7%25AB%25AF%25E5%25BC%2580%25E5%258F%2591,2,1.html
import requests
from lxml import etree
#确定一个对象,及网址
url='https://search.51job.com/list/180200,000000,0000,32,9,99,%25E5%2589%258D%25E7%25AB%25AF%25E5%25BC%2580%25E5%258F%2591,2,1.html'
res=requests.get(url)
print(res)
res.encoding='gbk'
<Response [200]>
#利用etree初始化生成一个Xpath解析对象
root=etree.HTML(res.text)
#利用Xpath获取网页信息
#职位名
position=root.xpath('//p[@class="t1 "]/span/a/@title')
print(position)
len(position)
['高级前端开发工程师', '前端开发工程师', 'Web前端开发工程师', '前端开发工程师(中高级)', 'Web前端开发工程师(急聘+周末双休)', 'web前端开发工程师(偏react方向)', 'Web前端开发工程师', '前端开发(精通javaScript)', 'Web前端开发工程师', '前端开发负责人—武汉', '前端开发工程师', '前端开发主管', '带薪年假+web前端开发', 'python前端开发', '中级前端开发工程师', '前端开发工程师', 'python前端开发', '前端开发工程师', '前端开发工程师', '前端开发工程师', '前端开发工程师', 'web前端开发实习生+双休+五险一金', 'Web前端开发工程师', '前端开发工程师', 'Web前端开发工程师', 'Web前端开发工程师', '初级web前端开发助理+项目奖', 'web前端开发', '实习web前端开发', '前端开发工程师', '小程序前端开发工程师', '高级前端开发工程师', '前端开发工程师', '前端开发(工作地点:宜昌)', 'WEB前端开发/中级开发', 'Web前端开发工程师', '高级Web前端开发工程师', 'Web前端开发工程师', 'WEB前端开发工程师', 'Web前端开发工程师', '前端开发工程师', 'Web前端开发工程师', 'WEB前端开发助理', 'Web前端开发工程师', 'Web前端开发工程师', '前端开发工程师', 'Web前端开发工程师', '初级前端开发工程师', '高端前端开发', '前端开发', '前端开发工程师']
51
#获取a标签中的文本信息
position=root.xpath('//p[@class="t1 "]/span/a/text()')
print(position)
['\r\n                                                高级前端开发工程师                                            ', '\r\n                                    前端开发工程师                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    前端开发工程师(中高级)                                ', '\r\n                                    Web前端开发工程师(急聘+周末双休)                                ', '\r\n                                    web前端开发工程师(偏react方向)                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    前端开发(精通javaScript)                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    前端开发负责人—武汉                                ', '\r\n                                    前端开发工程师                                ', '\r\n                                    前端开发主管                                ', '\r\n                                    带薪年假+web前端开发                                ', '\r\n                                    python前端开发                                ', '\r\n                                    中级前端开发工程师                                ', '\r\n                                    前端开发工程师                                ', '\r\n                                    python前端开发                                ', '\r\n                                    前端开发工程师                                ', '\r\n                                    前端开发工程师                                ', '\r\n                                    前端开发工程师                                ', '\r\n                                    web前端开发实习生+双休+五险一金                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    前端开发工程师                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    初级web前端开发助理+项目奖                                ', '\r\n                                    web前端开发                                ', '\r\n                                    实习web前端开发                                ', '\r\n                                    前端开发工程师                                ', '\r\n                                    小程序前端开发工程师                                ', '\r\n                                    高级前端开发工程师                                ', '\r\n                                    前端开发工程师                                ', '\r\n                                    前端开发(工作地点:宜昌)                                ', '\r\n                                    WEB前端开发/中级开发                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    高级Web前端开发工程师                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    WEB前端开发工程师                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    前端开发工程师                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    WEB前端开发助理                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    前端开发工程师                                ', '\r\n                                    Web前端开发工程师                                ', '\r\n                                    初级前端开发工程师                                ', '\r\n                                    高端前端开发                                ', '\r\n                                    前端开发                                ', '\r\n                                    前端开发工程师                                ', '\r\n                                    高级前端开发工程师                                ']
#strip,去除字符串两端的空格和换行符
print(position[0])
print(position[0].strip())
#rstrip,去除字符串右端的换行符,lstrip去除左端的空行和换行符
print(position[0].rstrip())
print(position[0].lstrip())高级前端开发工程师
高级前端开发工程师高级前端开发工程师
高级前端开发工程师
for i in range(len(position)):position[i]=position[i].strip()
print(position)
['高级前端开发工程师', '前端开发工程师', 'Web前端开发工程师', '前端开发工程师(中高级)', 'Web前端开发工程师(急聘+周末双休)', 'web前端开发工程师(偏react方向)', 'Web前端开发工程师', '前端开发(精通javaScript)', 'Web前端开发工程师', '前端开发负责人—武汉', '前端开发工程师', '前端开发主管', '带薪年假+web前端开发', 'python前端开发', '中级前端开发工程师', '前端开发工程师', 'python前端开发', '前端开发工程师', '前端开发工程师', '前端开发工程师', 'web前端开发实习生+双休+五险一金', 'Web前端开发工程师', '前端开发工程师', 'Web前端开发工程师', 'Web前端开发工程师', '初级web前端开发助理+项目奖', 'web前端开发', '实习web前端开发', '前端开发工程师', '小程序前端开发工程师', '高级前端开发工程师', '前端开发工程师', '前端开发(工作地点:宜昌)', 'WEB前端开发/中级开发', 'Web前端开发工程师', '高级Web前端开发工程师', 'Web前端开发工程师', 'WEB前端开发工程师', 'Web前端开发工程师', '前端开发工程师', 'Web前端开发工程师', 'WEB前端开发助理', 'Web前端开发工程师', 'Web前端开发工程师', '前端开发工程师', 'Web前端开发工程师', '初级前端开发工程师', '高端前端开发', '前端开发', '前端开发工程师', '高级前端开发工程师']
company=root.xpath('//span[@class="t2"]/a/@title')
print(company)
['“前程无忧”51job.com(光谷)', '武汉万般上品信息技术有限公司', '武汉上九利合科技有限公司', '北京美百极致科技有限公司', '武汉捷讯信息技术有限公司', '武汉无线飞翔科技有限公司', '武汉麦诺软创网络科技有限公司', '武汉掌中宝网络科技有限公司', '武汉东天红数字科技有限公司', '中设数字技术股份有限公司', '中普睿云信息科技(武汉)有限公司', '武汉市星商电子商务有限公司', '湖北华奥星空体育产业联盟发展有限公司', '莆田市维诺尔贸易有限公司', '武汉大方汽车租赁有限公司', '光谷金信(武汉)科技有限公司', '福州踏趣百妙商贸有限公司', '武汉璇瑞智佳装饰装修设计工程有限公司', '上海南棠实业有限公司', '湖北长江云新媒体集团有限公司', '武汉华工科固建筑技术工程有限公司', '武汉市软酷网络科技有限公司', '武汉云外恒信息技术有限公司', '武汉北科天翼信息科技股份有限公司', '武汉美美咖科技有限公司', '湖北华体康健康科技有限公司', '武汉科思沃斯教育科技有限公司', '湖北省零度银色冰雪实业有限公司', '熊猫智慧水务有限公司', '武汉文一科技有限公司', '武汉悦然心动网络科技有限公司', '武汉共成联创信息技术有限公司', '宜昌快马仕网络科技有限公司', '前海金信(深圳)科技有限责任公司', '掌淘网络科技(上海)有限公司武汉分公司', '武汉数文科技有限公司', '武汉市胜意科技发展有限公司', '上海幸宜信息科技有限公司武汉分公司', '武汉车边生活科技有限公司', '武汉昊天驰科技有限公司', '武汉同袍网络科技有限责任公司', '武汉智博华鑫网络科技有限公司', '武汉乡聚信息产业有限公司', '深圳市财富趋势科技股份有限公司', '武汉正熙网络科技有限公司', '北京金山办公软件股份有限公司', '上海七圣网络科技有限公司', '武汉般若互动科技有限公司', '武汉炫幕网络科技有限公司', '武汉斗鱼网络科技有限公司', '“前程无忧”51job.com(光谷)']
place=root.xpath('//div[@class="el"]/span[@class="t3"]/text()')
print(place)
['武汉-洪山区', '武汉-武昌区', '武汉-武昌区', '武汉-洪山区', '武汉-洪山区', '武汉-江夏区', '武汉-洪山区', '武汉-武昌区', '武汉-江岸区', '武汉-武汉经济...', '武汉-武昌区', '武汉-洪山区', '武汉-江夏区', '武汉-洪山区', '武汉', '武汉-洪山区', '武汉-洪山区', '武汉-江汉区', '武汉-武昌区', '武汉-武昌区', '武汉-洪山区', '武汉-洪山区', '武汉-洪山区', '武汉', '武汉', '武汉-江汉区', '武汉', '武汉-汉阳区', '武汉-洪山区', '武汉-洪山区', '武汉-洪山区', '武汉-汉阳区', '异地招聘', '武汉-洪山区', '武汉-洪山区', '武汉', '武汉-江夏区', '武汉-东湖新技...', '武汉-洪山区', '武汉-洪山区', '武汉-洪山区', '武汉-洪山区', '武汉-洪山区', '武汉-洪山区', '武汉-洪山区', '武汉-洪山区', '武汉-洪山区', '武汉-江岸区', '武汉-江岸区', '武汉', '武汉-洪山区']
salary=root.xpath('//div[@class="el"]/span[@class="t4"]/text()')
print(salary)
print(len(salary))
['12-18万/年', '0.6-1.5万/月', '0.8-1.2万/月', '1-1.5万/月', '0.7-1.4万/月', '0.6-1.2万/月', '3-7千/月', '0.9-1.3万/月', '6-8千/月', '1.5-2.5万/月', '0.6-1.2万/月', '1-2万/月', '4.5-7.5千/月', '0.6-1.2万/月', '0.7-1万/月', '0.9-1.4万/月', '0.6-1.2万/月', '0.8-1万/月', '5-9千/月', '5-18万/年', '3.5-6千/月', '0.6-1万/月', '0.5-1万/月', '3-5千/月', '1-1.5万/月', '4.5-7千/月', '0.6-1.1万/月', '4.5-7千/月', '0.6-1.5万/月', '6-9千/月', '1.2-2.4万/月', '6.5-8千/月', '4-6千/月', '1.2-2万/月', '1-1.5万/月', '0.7-1.2万/月', '0.9-1.5万/月', '0.7-1.4万/月', '1-2万/月', '6-8千/月', '6-8千/月', '4.5-7.5千/月', '5-8千/月', '0.6-1万/月', '0.8-1.2万/月', '1.5-3万/月', '0.7-1.2万/月', '4-6千/月', '3.5-6千/月', '1.5-2万/月', '12-18万/年']
51
#把取出的信息放在数据框中
from pandas import DataFrame
jobInfo=DataFrame([position,company,place,salary]).T
jobInfo.columns=['职位名','公司名','地点','薪资']
jobInfo.head(10)
职位名 公司名 地点  薪资
0   高级前端开发工程师   “前程无忧”51job.com(光谷)   武汉-洪山区  12-18万/年
1   前端开发工程师 武汉万般上品信息技术有限公司  武汉-武昌区  0.6-1.5万/月
2   Web前端开发工程师  武汉上九利合科技有限公司    武汉-武昌区  0.8-1.2万/月
3   前端开发工程师(中高级)  北京美百极致科技有限公司    武汉-洪山区  1-1.5万/月
4   Web前端开发工程师(急聘+周末双休)  武汉捷讯信息技术有限公司    武汉-洪山区  0.7-1.4万/月
5   web前端开发工程师(偏react方向)  武汉无线飞翔科技有限公司    武汉-江夏区  0.6-1.2万/月
6   Web前端开发工程师  武汉麦诺软创网络科技有限公司  武汉-洪山区  3-7千/月
7   前端开发(精通javaScript)    武汉掌中宝网络科技有限公司   武汉-武昌区  0.9-1.3万/月
8   Web前端开发工程师  武汉东天红数字科技有限公司   武汉-江岸区  6-8千/月
9   前端开发负责人—武汉  中设数字技术股份有限公司    武汉-武汉经济...  1.5-2.5万/月
#51job爬虫总结
#1.导入各种包
import requests
from lxml import etree
from pandas import DataFrame
#确定网址,
url='https://search.51job.com/list/180200,000000,0000,32,9,99,%25E5%2589%258D%25E7%25AB%25AF%25E5%25BC%2580%25E5%258F%2591,2,1.html'
res=requests.get(url)
res.encoding='gbk'
root=etree.HTML(res.text)#调用etree,生成Xpath解析对象
#利用Xpath提取网页信息
position=root.xpath('//p[@class="t1 "]/span/a/@title')
company=root.xpath('//span[@class="t2"]/a/@title')
place=root.xpath('//div[@class="el"]/span[@class="t3"]/text()')
salary=root.xpath('//div[@class="el"]/span[@class="t4"]/text()')
#把信息放入数据框
jobInfo=DataFrame([position,company,place,salary]).T
jobInfo.columns=['职位名','公司名','地点','薪资']
jobInfo
职位名 公司名 地点  薪资
0   高级前端开发工程师   “前程无忧”51job.com(光谷)   武汉-洪山区  12-18万/年
1   前端开发工程师 武汉万般上品信息技术有限公司  武汉-武昌区  0.6-1.5万/月
2   Web前端开发工程师  武汉上九利合科技有限公司    武汉-武昌区  0.8-1.2万/月
3   前端开发工程师(中高级)  北京美百极致科技有限公司    武汉-洪山区  1-1.5万/月
4   Web前端开发工程师(急聘+周末双休)  武汉捷讯信息技术有限公司    武汉-洪山区  0.7-1.4万/月
5   web前端开发工程师(偏react方向)  武汉无线飞翔科技有限公司    武汉-江夏区  0.6-1.2万/月
6   Web前端开发工程师  武汉麦诺软创网络科技有限公司  武汉-洪山区  3-7千/月
7   前端开发(精通javaScript)    武汉掌中宝网络科技有限公司   武汉-武昌区  0.9-1.3万/月
8   Web前端开发工程师  武汉东天红数字科技有限公司   武汉-江岸区  6-8千/月
9   前端开发负责人—武汉  中设数字技术股份有限公司    武汉-武汉经济...  1.5-2.5万/月
10  前端开发工程师 中普睿云信息科技(武汉)有限公司  武汉-武昌区  0.6-1.2万/月
11  前端开发主管  武汉市星商电子商务有限公司   武汉-洪山区  1-2万/月
12  带薪年假+web前端开发   湖北华奥星空体育产业联盟发展有限公司  武汉-江夏区  4.5-7.5千/月
13  python前端开发  莆田市维诺尔贸易有限公司    武汉-洪山区  0.6-1.2万/月
14  中级前端开发工程师   武汉大方汽车租赁有限公司    武汉  0.7-1万/月
15  前端开发工程师 光谷金信(武汉)科技有限公司    武汉-洪山区  0.9-1.4万/月
16  python前端开发  福州踏趣百妙商贸有限公司    武汉-洪山区  0.6-1.2万/月
17  前端开发工程师 武汉璇瑞智佳装饰装修设计工程有限公司  武汉-江汉区  0.8-1万/月
18  前端开发工程师 湖北长佰网络科技有限公司    武汉-洪山区  0.5-1万/月
19  前端开发工程师 上海南棠实业有限公司  武汉-武昌区  5-9千/月
20  前端开发工程师 湖北长江云新媒体集团有限公司  武汉-武昌区  5-18万/年
21  web前端开发实习生+双休+五险一金    武汉华工科固建筑技术工程有限公司    武汉-洪山区  3.5-6千/月
22  Web前端开发工程师  武汉市软酷网络科技有限公司   武汉-洪山区  0.6-1万/月
23  前端开发工程师 武汉云外恒信息技术有限公司   武汉-洪山区  0.5-1万/月
24  Web前端开发工程师  武汉北科天翼信息科技股份有限公司    武汉  3-5千/月
25  Web前端开发工程师  武汉美美咖科技有限公司 武汉  1-1.5万/月
26  初级web前端开发助理+项目奖    湖北华体康健康科技有限公司   武汉-江汉区  4.5-7千/月
27  web前端开发 武汉科思沃斯教育科技有限公司  武汉  0.6-1.1万/月
28  实习web前端开发   湖北省零度银色冰雪实业有限公司 武汉-汉阳区  4.5-7千/月
29  前端开发工程师 熊猫智慧水务有限公司  武汉-洪山区  0.6-1.5万/月
30  小程序前端开发工程师  武汉文一科技有限公司  武汉-洪山区  6-9千/月
31  高级前端开发工程师   武汉悦然心动网络科技有限公司  武汉-洪山区  1.2-2.4万/月
32  前端开发工程师 武汉共成联创信息技术有限公司  武汉-汉阳区  6.5-8千/月
33  前端开发(工作地点:宜昌)  宜昌快马仕网络科技有限公司   异地招聘    4-6千/月
34  WEB前端开发/中级开发    前海金信(深圳)科技有限责任公司  武汉-洪山区  1.2-2万/月
35  Web前端开发工程师  掌淘网络科技(上海)有限公司武汉分公司   武汉-洪山区  1-1.5万/月
36  高级Web前端开发工程师    武汉数文科技有限公司  武汉  0.7-1.2万/月
37  Web前端开发工程师  武汉市胜意科技发展有限公司   武汉-江夏区  0.9-1.5万/月
38  WEB前端开发工程师  上海幸宜信息科技有限公司武汉分公司   武汉-东湖新技...  0.7-1.4万/月
39  Web前端开发工程师  武汉车边生活科技有限公司    武汉-洪山区  1-2万/月
40  前端开发工程师 武汉昊天驰科技有限公司 武汉-洪山区  6-8千/月
41  Web前端开发工程师  武汉同袍网络科技有限责任公司  武汉-洪山区  6-8千/月
42  WEB前端开发助理   武汉智博华鑫网络科技有限公司  武汉-洪山区  4.5-7.5千/月
43  Web前端开发工程师  武汉乡聚信息产业有限公司    武汉-洪山区  5-8千/月
44  Web前端开发工程师  深圳市财富趋势科技股份有限公司 武汉-洪山区  0.6-1万/月
45  前端开发工程师 武汉正熙网络科技有限公司    武汉-洪山区  0.8-1.2万/月
46  Web前端开发工程师  北京金山办公软件股份有限公司  武汉-洪山区  1.5-3万/月
47  初级前端开发工程师   上海七圣网络科技有限公司    武汉-洪山区  0.7-1.2万/月
48  高端前端开发  武汉般若互动科技有限公司    武汉-江岸区  4-6千/月
49  前端开发    武汉炫幕网络科技有限公司    武汉-江岸区  3.5-6千/月
50  前端开发工程师 武汉斗鱼网络科技有限公司    武汉  1.5-2万/月
#将数据保存到本地
jobInfo.to_csv('51job.csv')

51job爬虫-xpath相关推荐

  1. Python爬虫——XPath的使用

    Python爬虫--XPath的使用 使用实例一:获取需要的文字 1.导入需要使用的模块 import urllib.request from lxml import etree 2.发送请求访问网站 ...

  2. Python 爬虫 xpath 数据解析基本用法

    Python 爬虫 xpath 数据解析基本用法 1. 基本语法 1.1 解析 html 语法 1.2 获取标签 1.3 获取标签中的内容 1.4 获取标签中的属性 1.5 通过内容寻找结点 2. 实 ...

  3. Python - 爬虫 - Xpath定位之starts-with()和string()函数的简单使用

    Python - 爬虫 - Xpath定位之starts-with()和string()函数的简单使用 文章目录 Python - 爬虫 - Xpath定位之starts-with()和string( ...

  4. python爬虫xpath的语法

    有朋友问我正则,,okey,其实我的正则也不好,但是python下xpath是相对较简单的 简单了解一下xpath: XPath 是一门在 XML 文档中查找信息的语言.XPath 可用来在 XML ...

  5. Python爬虫xpath详解

    目录 一.xpath介绍 二.安装lxml 三.xpath解析原理 四.实例化一个etree对象 五.xpath表达式 六.爬虫实战 一.xpath介绍 xpath是一门在 XML 文档中查找信息的语 ...

  6. python爬虫xpath教程_使用 Xpath 进行爬虫开发

    使用 Xpath 进行爬虫开发 Xpath( XML Path Language, XML路径语言),是一种在 XML 数据中查找信息的语言,现在,我们也可以使用它在 HTML 中查找需要的信息. 既 ...

  7. python | 尝试爬虫 xpath

    整理一下自己的笔记 是根据b站up主 大大的小番茄 的教程来看的,非常适合很新很新的新手. 首先要明白爬虫的思路:请求获取网页IP,根据已知的IP获取服务器返回的HTML,找到HTML里面自己需要的信 ...

  8. 前程无忧51job爬虫利用selenium爬取岗位信息-2021年10月29日

    # 2021年10月29日完成,爬取51job网站获得相关岗位信息 from selenium import webdriver from selenium.webdriver import Fire ...

  9. 51JOB爬虫+数据可视化 python

    1.登录模块: 用了Xpath和selenium,最后被缺口滑块验证码反爬了一波,缺口验证码那个地方成功率奇低. from selenium import webdriver from seleniu ...

最新文章

  1. C#调用win32 api程序实例
  2. putty遇到ctrl+s
  3. ThinkPHP 3.2.2 在 volist 多重循环嵌套中使用 if 判断标签
  4. 2.2.1操作系统之处理机调度的概念及层次
  5. Java并发编程—ScheduledThreadPoolExecutor原理分析
  6. 操作系统学习之用C语言模拟LRU算法
  7. 面试精讲之面试考点及大厂真题 - 分布式专栏 07 说一说什么是正向代理,反向代理
  8. Spark调优 shuffle调优
  9. 熊海博客php版本,xhcms_v1.0 熊海CMS是由熊海开发的一款可广泛应用于个人博客 联合开发网 - pudn.com...
  10. ubuntu 下 4412烧写SuperBoot
  11. JAVA三大器之拦截器
  12. linux设备驱动模型架构分析 一
  13. PHP7函数大全(4553个函数)
  14. PG 数据库表备份方案
  15. 晶闸管相控交流调压的详细计算
  16. 《工科泛函分析基础》预习笔记 证明:可测集上的连续函数都是可测函数
  17. java乘法口诀表_java 输出乘法口诀表
  18. KGB知识图谱的功能和特色介绍
  19. 渗透测试-Kali虚拟机技术
  20. DHT:分布式哈希表

热门文章

  1. android 拨打电话、 监听来电、监听呼出电话的功能实现
  2. 程序千成不能封闭自满
  3. STM32上手-STWingSKIT_BC28学习笔记(一)环境搭建和LED灯点亮
  4. 平均值的标准误差(SEM)
  5. 实习时候的亚子==(三)
  6. 【商业数据分析】 CPC广告优化在复杂业务环境下需要考虑的要素
  7. 实习日志二--JDBC
  8. 趣学算法14天阅读|Day1
  9. html5手机不能自动播放音乐,H5案例---解决H5中背景音乐无法自动播放问题
  10. OI生涯回忆录(Part2:至初二APIO结束)