使用python选取51Job上Java,Php,C++等7项模块进行下载
数据格式呈现如下:
:
(1):Java 南京擎天科技有限公司 南京 0.7-2万/月 职位描述: 1、负责公司自研产品应用软件的分析、设计、编码; 2
(2):Java 江苏万全集团 南京-浦口区 0.7-2万/月 岗位职责:1.3年以上JAVA开发工作经验,具备扎实的JAVA基
(3):Java 深圳前海橙色魔方信息技术有限公司 南京-雨花台区 0.8-1.5万/月 岗位要求1.参与系统的架构、设计及关键
(4):Java 北京宇天恒瑞科技发展有限公司 南京-建邺区 0.8-1.2万/月 任职资格:1.3年以上服务端开发经验;2.扎
(5):Java 南京国通智能科技有限公司 南京-建邺区 0.8-1.5万/月 1、后台java研发、java代码编写;职位要求
(1):Python 江苏天鼎证券投资咨询有限公司 南京-建邺区 1-1.5万/月 岗位要求:1、大专及以上
(2):Python 江苏开博信息科技有限公司 南京-秦淮区 1-1.5万/月 岗位职责:1、 负责江苏银行
(3):Python 江苏盈达信息技术有限公司 南京-建邺区 0.8-1.2万/月 职位描述:一、工作职责
(4):Python 南京熙泰信息技术有限公司 南京 0.8-1万/月 1.懂go语言2.了解docker3
(5):Python 南京硅基智能科技有限公司 南京 1.5-4万/月 1、参与公司产品的整体规划、功能设计
代码:
quest
import re,time,osdef get_base_url():base_url1 = ',000000,0000,00,9,99,'base_url2 = '%25E5%25BC%2580%25E5%258F%2591%25E5%25B7%25A5%25E7%25A8%258B%25E5%25B8%2588,2,'base_model=['Java','Php','C++','Android','Python','Web前端开发^AWeb%25E5%2589%258D%25E7%25AB%25AF','大数据开发^A%25E5%25A4%25A7%25E6%2595%25B0%25E6%258D%25AE']base_url=[]for i in base_model:url1=base_url1+i.split('^A')[-1]+base_url2+'1.html'url= base_url1+i.split('^A')[-1]+base_url2res = '</ul><span class="td">(.*?)</span>'reg = repile(res).findall(get_html(url1))num_page=re.findall('d+',reg[0])[0]print(num_page)for j in range(1,int(num_page)+1):base_url.append(i.split('^A')[0]+'^A'+url+str(j)+'.html')return base_urldef get_html(url):htmlquest.urlopen(url).read().decode('gbk')return htmldef get_a_links(html):res = '<a target="_blank" title=".*?" href="(.*?)" onmousedown="">[sS]*?<span class="t2"><a target="_blank"' ' title="(.*?)" href="jobs.*?.html">.*?</a></span>[sS]*?<span class="t3">(.*?)</span>' '[sS]*?<span class="t4">(.*?)</span>[sS]*?</div>'html_link=repile(res).findall(html)return html_linkdef get_job_content(html):res = '<div class="bmsg job_msg inbox">([sS]*?)<div class="mt10">'content = repile(res).findall(html)job_content=re.sub('r|n|t|<.*?>|&#d+;| ','',content[0])return job_contentdef write_to_file(content,file_name,j):with open(file_name+'.txt','a+',encoding="utf-8") as f:f.write('('+str(j)+'):'+file_name+' '+content+'n')if __name__ == '__main__':start = time.clock()os.chdir('C:/Users/Administrator/PycharmProjects/untitled/venv')j,k,m=0,0,0u2=[]for url in get_base_url():url_str=url.split('^A')lists1=get_a_links(get_html(url_str[1]))for i in range(len(lists1)):try:j+= 1m+=1u1=url_str[0]if u1!=u2 or len(u2)==0:j=1job_content = get_job_content(get_html(list(lists1[i])[0]))job_contents=list(lists1[i])[1]+' '+list(lists1[i])[2]+' '+list(lists1[i])[3]+' '+job_contentwrite_to_file(job_contents,url_str[0],j)u2 = url_str[0]print("Current Model:"+u2+" Finished Saved " + str(j) + " articles")except Exception:k+=1print('Analysis Error!!!'+str(k))continueend = time.clock()print('End!!!!!')print('success '+str(m)+' Error '+str(k))print('Running time: %s Seconds' % (end - start))
亲测可用!
本文发布于:2024-01-30 17:54:02,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170660844821786.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |