python工作招聘-python爬虫 智联招聘 工作地点

需求:智联上找工作的时候,工作地点在搜索页面只能看到城市-区。看不到具体的地址。(离家近的工作肯定优先考虑)

思路:爬取搜索页面(页面一)然后进去其中一个内页,再爬工作地点(页面二),【废话】

利用的库:re,csv,bs4,requests

基本功能已实现。

下一步方向,调取地图api 计算离家距离。

运算速度方面的话,可以考虑多线程处理。

1216031-20180330141204965-651812029.png

1216031-20180330141326333-653601233.png

以下代码拿来就用哈!

import requests

from bs4 import BeautifulSoup

import re

import csv

location = "广州"

search = "网络工程师"

fileName = location + "-" + search + ".csv"

with open(fileName, "w", newline="") as datacsv:

csvwriter = csv.writer(datacsv, dialect=("excel"))

# res = requests.get("https://sou.zhaopin.com/jobs/searchresult.ashx?jl=%E4%BD%9B%E5%B1%B1&kw=%E7%BD%91%E7%BB%9C%E5%B7%A5%E7%A8%8B%E5%B8%88&sm=0&p=1")

Url = ("https://sou.zhaopin.com/jobs/searchresult.ashx?jl=%s&kw=%s&sm=0&p=1" % (location, search))

res = requests.get(Url)

res.encoding = 'utf-8'

soup = BeautifulSoup(res.text,'html.parser')

all_work = []

for link in soup.find_all('a'):

if re.search("com/[0-9]*.htm",str(link.get('href'))):

all_work.append(link.get('href'))

for i in all_work:

work = []

res2 = requests.get(i)

res2.encoding = 'utf-8'

soup2 = BeautifulSoup(res2.text,'html.parser')

for z in soup2.find_all("h2"):

work.append((z.get_text()).split()[0])

work_list = str(soup2.get_text()).split()

work_list2 = []

count_y = 0

for y in work_list:

count_y +=1

if "职位月薪" in y:

work_list2 = work_list[count_y-1:count_y+6]

for xx in work_list2:

work.append(xx)

csvwriter.writerow(work)

break

datacsv.close()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值