首页 » SEO优化 » 起价php是什么技巧_拉勾网上Java vs PHP

起价php是什么技巧_拉勾网上Java vs PHP

访客 2024-12-10 0

扫一扫用手机浏览

文章目录 [+]

step1:首先剖析一下要抓取的页面信息

进行翻页操作的时候,post要求的参数紧张几个参数是city,pn,kd分别对应关键词城市,翻页数,职位。

起价php是什么技巧_拉勾网上Java vs PHP

step2:针对每个页面,根据自己的需求解析HTML页面内容,我利用的是python,推举beautifulsoup+re的组合模式来解析网页内容。
本次爬取只是大略地爬取赤色框框里的信息,如果想爬取更多信息,可以进入每个职位的url页面爬取。

起价php是什么技巧_拉勾网上Java vs PHP
(图片来自网络侵删)

step3:将爬取的内容,导入数据库中,本次爬取利用的是开源postgresql数据库。

代码部分:

#!/usr/bin/env python

#coding:utf8

import urllib2

import requests

import json

import psycopg2

import re

import time

import codecs

import os

import traceback

from bs4 import BeautifulSoup

def writeLogs(filename,contents):

f=open(filename,'a')

f.write(contents)

f.close()

def crawler_lagou():

city_ls=['杭州','北京']

page_ls=range(1,31)

job_ls=['Java','PHP']

for job_city in city_ls:

for job in job_ls:

for page in page_ls:

try:

url=r'https://www.lagou.com/zhaopin/'+job+'/'

para={'city':job_city,'px':'default','kd':job,'pn':page}

print para

time.sleep(1)

html_content=requests.post(url,para).text

soup=BeautifulSoup(html_content,'lxml')

#当前城市

city=soup.find('a',class_=\"大众current_city current\公众).text

city=[city]15

#职位名称

job_name=soup.find_all('div',class_='p_top')

job_name=[i.find('a',class_=\"大众position_link\"大众).find('h2').text for i in job_name if i.find('a',class_=\"大众position_link\"大众)]

#薪水

salary=soup.find_all('div',class_='li_b_l')

salary=[i.find('span',class_=\公众money\公众).text for i in salary if i.find('span',class_=\公众money\"大众)]

#print salary,len(salary)

#履历

experience = soup.find_all('div',class_='li_b_l')

experience=[i.text for i in experience if i.find('span',class_=\公众money\"大众)]

experience=[i.split('\n')[2] for i in experience]

#公司名称

company=soup.find_all('div',class_=\公众company_name\公众)

company=[i.find('a',target=\公众_blank\"大众).text for i in company if i.find('a',target=\公众_blank\"大众)]

#公司性子

industry=soup.find_all('div',class_=\公众industry\"大众)

industry=[i.text.strip() for i in industry]

sql='insert into crawler.lagou_job_zh(city,job_name,salary,experience,company,industry) values (%s,%s,%s,%s,%s,%s)'

param=zip(city,job_name,salary,experience,company,industry)

cur.executemany(sql,param)

except:

print '{0}爬取失落败!
'.format(para)

continue

if __name__=='__main__':

conn=psycopg2.connect(host='10.0.21.227',port='5432',database='sample_db',user='postgres',password='OOoo0000')

cur=conn.cursor()

try:

crawler_lagou()

conn.commit()

cur.close()

conn.close()

print '程序实行成功!
'

except Exception,e:

print '程序实行发生非常:{0}!
'.format(e)

conn.rollback()

cur.close()

conn.close()

filename=r'lagou.log'

content = '-'30 + time.strftime('%Y-%m-%d %H:%M:%S') + '-'30 + '\n'

writeLogs(filename,content)

f=open(filename,'a')

traceback.print_exc(file=f)

f.flush()

f.close()

终极数据库数据:

step4:数据可视化

数据可视化部分,由于python的matplotlib包的还没入门,而R的可视化手段更加熟习也更加灵巧,我选择用的R进行可视化。

须要把稳的是,以下剖析结论的大条件是北京、杭州地区的Java、PHP职位比较,数据来源仅限于拉勾网。

4.1 杭州 vs 北京

4.1.1 起步价比较

从上图分布可以看出,北京的薪酬的起步价明显都集中在15k,而杭州地区很奇怪有两个峰值,一个集中在10k,一个集中在15k,可以思考这是不是杭州地区的java和php的起步价存在显著差异引起的?后面会给出结论。

从上图可以看出,杭州的起步价四分位数明显比北京低,须要把稳的是北京的第一分位数和中位数重合在15K的位置上,验证了上面的直方图结论,解释北京对15这个起步价的得到了广泛的认可,从侧面反响出15是Java、PHP工程师在北京的温饱线,哈哈~

4.1.2 天花板比较

从上图可以看出来,北京薪酬的天花板紧张集中在20K以上,而杭州的天花板很显然集中在20k以下,以是如果你在杭州已经拿了20,如果还想拿更多,那就去北京吸雾霾吧~

4.2 Java vs PHP

4.2.1 起步价比较

从上图分布的集中趋势可以看出,不论是Java还是PHP,起步价都是集中在15旁边,没有很显著的差异。

从上图四分位数可以看出,Java和PHP薪酬的起步价的分布无明显差异。

4.2.2 天花板比较

从上图天花板价分布来看,Java和PHP天花板都集中在20-30之间。

从小提琴图和分位数来看,从天花板价格来看,Java的还是要高于PHP。

4.3 城市与job

4.3.1 起步价比较

从上图可以看出,北京的java和PHP起步价无显著差异,但是杭州的Java和PHP确实存在显著差异,杭州的Java起步价明显高于PHP,这也回答了前面的第一个问题。

4.3.2 天花板比较

从上图看来,北京的java和PHP天花板无显著差异,但是杭州的Java天花板明显高于PHP。
以是,在杭州的同学,如果你还在犹豫学Java还是PHP,果断入手Java吧~

标签:

相关文章

php证码函数技巧_php若何实现验证码

2016-06-22 PHP技能分享证码在表单实现越来越多了,但是用js的写的验证码,总以为未便利,以是学习了下php实现的验证码...

SEO优化 2024-12-13 阅读0 评论0