51Job自动收藏职位

javascript代码如:(现在只限于两个条件java+上海,可自己更改内容.将代码放到html文件中,在IE中运行就可以)!!!切记先登录,在同一个浏览器里(用EditPlus),在www.51job.com上登录,一定要先登录,让内存中产生一个cookice,在服务器上产生相应的session才行。不然报错.   大家有什么问题请留言

<html>

 <head>

  <title> 51job </title>

  <meta http-equiv="Content-Type" content="text/html; charset=gb2312">

  <script language="javascript" src="http://js.51jobcdn.com/in/js/2009/Base.js?20101126"></script> 

<script language="javascript" src="http://js.51jobcdn.com/in/js/2009/Base.ZzLayer.js?20101126"></script> 

<script language="javascript" src="http://js.51jobcdn.com/in/js/2009/Base.ZzLayer.ExtZzLayer.js?20101126"></script> 

<script language="javascript" src="http://js.51jobcdn.com/in/js/2009/search/Base.Search.js?20100407"></script> 

<script language="javascript" src="http://js.51jobcdn.com/in/js/2009/payservice/GetCompetition.js?20100604"></script> 

<script language="javascript" src="http://js.51jobcdn.com/in/js/2009/my/My_SMS_Self.js?20100421"></script> 

<script language="javascript" src="http://js.51jobcdn.com/in/js/2009/fans.js?20101126"></script> 

<script language="javascript" src="http://js.51jobcdn.com/in/js/2009/cv/CV_QuickApply.js?20100726"></script>

 

 

  <script language="javascript" src="http://js.51jobcdn.com/in/js/2009/jQuery.js"></script>

  <script language="javascript" src="http://js.51jobcdn.com/in/js/2009/JsBase.js"></script>

  <script language="javascript" src="http://js.51jobcdn.com/in/js/2009/login.js"></script>

  <script type="text/javascript">

     var xmlrequest=null;

     function  createXMLHttpRequest()

     {if(window.XMLHttpRequest){xmlrequest=new XMLHttpRequest();}

else if(window.ActiveXObject){try{xmlrequest=new ActiveXObject("Msxml2.XMLHTTP");

     }catch(e){try{xmlrequest=new ActiveXObject("Microsoft.XMLHTTP");}catch(e){}}}  }

 

 

     function  submit51()

     {

        createXMLHttpRequest();

var  username=document.getElementById("username").value;

var  userpwd=document.getElementById("userpwd").value;

        var  url="http://my.51job.com/my/My_Pmc.php?username="+username+"&userpwd="+userpwd;

 

        xmlrequest.open("get",url,true);

        xmlrequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

        xmlrequest.onreadystatechange=search51;

        xmlrequest.send(null); 

     }

 

function   search51()

     {

         if (xmlrequest.readyState==4)

         {

             if(xmlrequest.status==200)

             {

for(var i=1;i<20;i++)

{

var url="http://search.51job.com/jobsearch/search_result.php?fromJs=1&jobarea=0200&district=0000&funtype=0000&industrytype=00&issuedate=9&providesalary=99&keyword=java&keywordtype=2&curr_page="+i+"&lang=c&stype=2&postchannel=0000&workyear=99&cotype=99&degreefrom=99&jobterm=01&lonlat=0,0&radius=-1&ord_field=0&list_type=0&fromType=14";

 

search51pg(url);

}

             }

         }

     }

 

function search51pg(url)

{

createXMLHttpRequest();

xmlrequest.open("get",url,true);

xmlrequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");

xmlrequest.onreadystatechange=search51back;

xmlrequest.send(null); 

}

 

 

function   search51back()

     {

         if (xmlrequest.readyState==4)

         {

             if(xmlrequest.status==200)

             {

str = xmlrequest.responseText;

var ary = str.split("http://search.51job.com/job/");

for(var i=1;i<ary.length;i++)

{

//var url="http://search.51job.com/job/"+ary[i].split(",")[0]+",c.html";

//alert(url);

 

zzSearch.saveJobClk( ary[i].split(",")[0] , event );

}

 

             }

         }

     }

 

  </script>

 

 </head>

 

 <body>

 

 <table>

<tr>

<td align="right">username:</td>

<td><input name="username" type="text" id="username" value="" class="input140" style="color:#000;" /></td>

</tr>

<tr>

<td align="right">userpwd:</td>

<td><input name="userpwd" type="password" id="userpwd" value="" class="input140" style="color:#000;" /></td>

</tr>

<tr>

<td align="right" colspan=1><input type="button" οnclick="submit51()" value="login" /></td>

</tr>

  </table>

 

 

 <script language="JavaScript" type="text/javascript">

var obj1;

var sUrl     = 'http://my.51job.com' + '/payservice/fans/fans_ajax.php?jsoncallback=?';

var coidArr  = document.getElementsByName('coid');

var fansnum  = document.getElementById('fansnum');

if(fansnum){

obj1 = $("#fansnum");

}else if(coidArr[0]){

obj1 = $("#" + coidArr[0].value);

}

var obj2   = $("#message");

if(obj1){

var offset = obj1.offset();

document.getElementById('message').style.top = offset.top - obj2.height() / 2 + obj1.height() / 5 + 'px';

document.getElementById('message').style.left = offset.left - obj2.width() + 'px';

}

for(var i = 0;i < coidArr.length; i++){

if(coidArr[i].value){

var flg = 0;

for(var j = 0;j < i; j++){

if(coidArr[j].value && coidArr[i].value == coidArr[j].value){

flg = 1;

break;

}

}

if(flg == 0){

$.getJSON(sUrl, {type:'0',coid:coidArr[i].value,step:i}, function (data){

var fansnum1 = document.getElementById(coidArr[data.index].value);

if(fansnum){

fansnum.innerHTML = data.searchData;

}

if(fansnum1){

fansnum1.innerHTML = data.searchData;

}

if(data.compfans != "1" && document.getElementById('message').style.display == 'none'){

document.getElementById('message').style.display = 'block';

}

});

}

}

}

</script>

<script language="javascript">

<!--

window.cfg = {

fileName: 'show_job_detail.php' ,

lang : 'c' ,

stype : '' ,

fullLang : 'Chinese' ,

langs : { 

sqzwml : 'applyjob' ,

qzzwqdg : '请在要选择的职位前打勾!' ,

myml : 'my' ,

ts_qxjzw : '请选择职位' ,

queren : '确认' ,

guanbi : '关闭' ,

nzdnxj : '您最多能选择' ,

xiang : '项' ,

xzdq : '选择地区' ,

xj_xg : '选择/修改' ,

zycs : '主要城市' ,

sysf : '所有省份' ,

buxian : '不限' ,

qingxj : '请选择' ,

yixuan : '已选' ,

znlb : '职能类别' ,

hylb : '行业类别' ,

gzdd : '工作地点' ,

quanbu : '全部' ,

zhineng : '职能' ,

hangye : '行业' ,

didian : '地点' ,

qsrgjz : '请输入关键字' ,

srpcgjz : '输入排除关键字'

} ,

url : { 

root : 'http://search.51job.com/jobsearch' ,

image : 'http://img01.51jobcdn.com/im/2009' ,

image_search : 'http://img01.51jobcdn.com/im/2009/search' ,

image_search_lang : 'http://img01.51jobcdn.com/im/2009/search/c' ,

image_search_c : 'http://img01.51jobcdn.com/im/2009/search/c' ,

image_search_e : 'http://img01.51jobcdn.com/im/2009/search/e'

} ,

domain : {

my : 'http://my.51job.com' ,

search : 'http://search.51job.com'

} ,

isJobview : '1' ,

isAcStatRecJob : '1' ,

acStatRecJobType : '0803111457'

};

 

function searchInit() {

if ( window.Search ) {

clearInterval( intVal );

window.zzSearch = new Search( { 

searchForm : document.searchForm ,

pageForm : document.pageForm ,

excludeForm : document.excludeForm ,

pageJumpForm : document.pageJumpForm ,

selJobPageForm : document.selJobPageForm ,

cfg : cfg

} );

}

}

var intVal = window.setInterval( searchInit , 50 );

//-->

</script>

 </body>

 

</html>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
好的,以下是爬取51job网站职位信息并绘图的步骤: 1. 确定要爬取的职位和地区,以及需要的数据字段。可以使用Python中的requests、beautifulsoup4等库进行网页解析和爬取。 2. 通过分析网页结构,确定要爬取的数据在哪个标签中,例如可以使用BeautifulSoup库中的find_all方法找到所有职位信息所在的标签。 3. 将爬取到的数据存储到本地文件或数据库中,可以使用Python中的csv、pandas等库进行数据处理和存储。 4. 对爬取到的数据进行分析和绘图,可以使用Python中的matplotlib、seaborn等库进行数据可视化。 以下是一个简单的示例代码,用于爬取51job网站上的Python职位信息并绘制饼图: ```python import requests from bs4 import BeautifulSoup import pandas as pd import matplotlib.pyplot as plt # 设置请求头,模拟浏览器访问 headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'} # 构造请求url url = 'https://search.51job.com/list/010000,000000,0000,00,9,99,Python,2,{}.html' # 循环爬取所有页面的职位信息 data = [] for i in range(1, 6): res = requests.get(url.format(i), headers=headers) soup = BeautifulSoup(res.text, 'html.parser') job_list = soup.find_all('div', class_='el') for job in job_list: job_name = job.find('a', target='_blank').text.strip() company_name = job.find('span', class_='t2').text.strip() salary = job.find('span', class_='t4').text.strip() if salary == '面议': continue data.append({'job_name': job_name, 'company_name': company_name, 'salary': salary}) # 将爬取到的数据存储到本地文件中 df = pd.DataFrame(data) df.to_csv('jobs.csv', index=False) # 对爬取到的数据进行分析和绘图 df = pd.read_csv('jobs.csv') df['salary'] = df['salary'].apply(lambda x: int(x.split('-')[0])) df['salary_range'] = pd.cut(df['salary'], [0, 5000, 10000, 15000, 20000, 30000, 50000, 100000]) salary_count = df['salary_range'].value_counts() plt.pie(salary_count, labels=salary_count.index, autopct='%1.1f%%') plt.title('Python职位薪资分布') plt.show() ``` 这段代码会爬取前5页的Python职位信息,并将职位名称、公司名称和薪资存储到本地文件中。然后,对薪资进行分段处理,统计每个薪资段的职位数量,并绘制饼图展示。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值