def jump_html(): url = 'https://hr.lagou.com/corpCenter/openservice/jumphtml.json' refer_url = 'https://hr.lagou.com/corpCenter/openservice/step3.html' header = get_header(url=refer_url) save_result = save_recruitment_needs(header) get_requests(url=url, headers=header, remark='跳转提交招聘者认证', rd='王豪') return save_result
def search_staff_after_remove(enterprise_id): search_referer_url = 'https://kaiwu.lagou.com/enterprise/index.html' get_requests(search_referer_url) search_url = 'https://gate.lagou.com/v1/neirong/edu/enterprise/getStaffsByStudyState?studyState=REMOVE&phone=&name=&pageNo=1&pageSize=20&enterpriseId=2&t=1594290060305' response = get_requests(url=search_url, headers={'x-l-req-header': '{deviceType:1}'}, rd='马坤鹏') return response
def search_staff(enterprise_id): search_referer_url = 'https://kaiwu.lagou.com/enterprise/index.html' get_requests(search_referer_url) search_url = f'https://gate.lagou.com/v1/neirong/edu/enterprise/getStaffsByStudyState?studyState=STUDY&phone=&name=自动化测试&pageNo=1&pageSize=20&{enterprise_id}' response = get_requests(url=search_url, headers={'x-l-req-header': '{deviceType:1}'}, rd='马坤鹏') return response
def enterprise_login(): login_password('13252477137', '990eb670f81e82f546cfaaae1587279a') url = 'https://passport.lagou.com/ajaxLogin/frameGrant.html?fl=2&service=https%3A%2F%2Fkaiwu.lagou.com%2Fenterprise%2Findex.html%23%2Findex&osc=PASSPORT._pscb(1)&ofc=PASSPORT._pfcb(1)&pfurl=https%3A%2F%2Fkaiwu.lagou.com%2Fenterprise%2Findex.html%23%2Findex' get_requests( url, headers={'referer': 'https://kaiwu.lagou.com/enterprise/index.html'}) search_referer_url = 'https://kaiwu.lagou.com/enterprise/index.html' get_requests(search_referer_url)
def dake_no_class(): login_password(username='******', password="******") # 重定向跳转到kaiwu.lagou.com的处理 get_requests( url= 'https://kaiwu.lagou.com/?action=grantST&ticket=ST-6c0d87f702634bf7bf2fa14b82b72b02&fl=2&osc=PASSPORT._pscb%282%29&ofc=PASSPORT._pfcb%282%29&pfurl=https%3A%2F%2Fkaiwu.lagou.com%2F' )
def perfectresume(): basicMain_html = 'https://www.lagou.com/resume/perfectresume.html' remark = '创建简历的初始页面' get_requests(url=basicMain_html, remark=remark) head_url = 'https://www.lagou.com/resume/saveHeadPic.json?headPicPath={}'.format( '/common/image/pc/default_boy_headpic2.png') remark = "上传头像" get_requests(url=head_url, remark=remark)
def activity_carp_entrance(orderId=None): if orderId == None: url = host + "/activity/carp/entrance" remark = "查询活动入口是否展示" return get_requests(url=url, headers=headers, remark=remark) else: url = host + "/activity/carp/entrance?orderId={}".format(orderId) remark = "查询活动入口是否展示" return get_requests(url=url, headers=headers, remark=remark)
def train_ai(rs_json): get_requests(rs_json.get("id"), rs_json.get("files")) get_cmd_popen(dataset_cmd) get_cmd_popen(rm_file_cmd) print("预处理完成, 准备执行训练") get_cmd_popen(train_cmd) """训练完成""" rs_json['status'] = 1 print("训练完成:", rs_json) post_requests(rs_json)
def move_to_employ(positionId,resumeOwnerId): refer_listofcandidates_url = "https://easy.lagou.com/can/index.htm" listofcandidates_header = get_code_token(refer_listofcandidates_url) url = 'https://easy.lagou.com/settings/template/in_temp.json?positionId='+str(positionId) get_requests(url=url,headers=listofcandidates_header) employ_url = 'https://easy.lagou.com/can/batch/toStageEmploy.json' employ_data = {"resumeIds":resumeOwnerId} r = form_post(url=employ_url,headers=listofcandidates_header ,data=employ_data,remark='已入职') return r
def join_with_user(userIdPasscode, invite_code): url = 'https://easy.lagou.com/invitation/joinWithUser.json' data = {'userIdPasscode': userIdPasscode, 'c': invite_code} remark = '确定加入公司' r = form_post(url=url, data=data, remark=remark, rd='royliu') if r.get('state') == 1: redirectUrl = r['content']['data']['redirectUrl'] get_requests(url=redirectUrl) if r.get('state') == 1: return 1 else: return 0
def train_and_generate_ai(rs_json): get_requests(rs_json.get("id"), rs_json.get("files")) get_cmd_popen(dataset_cmd) get_cmd_popen(rm_file_cmd) print("预处理完成, 准备执行训练") get_cmd_popen(train_cmd) print("训练完成,准备执行生成") get_cmd_popen( generate_cmd.format(rs_json.get("len"), rs_json.get("count"), rs_json.get("keyword"), rs_json.get("id"), rs_json.get("type"))) print("训练和生成完成")
def move_to_communicated(positionId, resumeOwnerId): url = 'https://easy.lagou.com/settings/template/in_temp.json?positionId=' + str( positionId) refer_listofcandidates_url = "https://easy.lagou.com/can/index.htm" listofcandidates_header = get_code_token(refer_listofcandidates_url) get_requests(url=url, headers=listofcandidates_header) toStageLink_url = 'https://easy.lagou.com/can/batch/toStageLink.json' toStageLink_data = {"resumeIds": resumeOwnerId} return form_post(url=toStageLink_url, data=toStageLink_data, headers=listofcandidates_header, remark='移动到待沟通')
def dashboard_index_get_user_id(): url = 'https://easy.lagou.com/dashboard/index.htm?from=c_index' r = get_requests(url=url) soup = BeautifulSoup(r, "html.parser") try: userId = soup.find(id="UserId")['value'] UserCompanyId = soup.find(id="UserCompanyId")['value'] except TypeError: r = get_requests(url=url, remark='获取easy主页的用户id') soup = BeautifulSoup(r, "html.parser") userId = soup.find(id="UserId")['value'] UserCompanyId = soup.find(id="UserCompanyId")['value'] lagou_company_id = re.findall(r'lgId: "(.*?)"', r)[0] return userId, UserCompanyId, lagou_company_id
def company_auth(): # com_header = get_header("https://easy.lagou.com/dashboard/index.htm?from=c_index")headers=com_header get_requests("https://easy.lagou.com/bstatus/auth/index.htm") com_step1_url = "https://hr.lagou.com/corpCenter/company/auth/step1.html" auth_file_url = "https://hr.lagou.com/corpCenter/company/auth/file.json" auth_file_data = { "fileUrl": "i/audio1/M00/01/C5/CgHIk1wQzSaAcR09AAqex8SeJls235.JPG" } auth_file_header = get_code_token(com_step1_url) remark = "上传营业执照" return form_post(url=auth_file_url, data=auth_file_data, headers=auth_file_header, remark=remark, rd='王豪')
def OrderResumespageStage(userid): ''' 查询简历阶段 :param userid: :return: ''' header = get_app_header(userid) url = "https://gate.lagou.com/v1/zhaopin/orderResumes/pages?positionId=0&resumeStage=2&onlyUnread=false&catchTag=0&pageSize=20" id = get_requests(url=url, headers=header, remark="分页查询简历") orderResumeId = id['content']['result'][0]['orderResumeId'] url = "https://gate.lagou.com/v1/zhaopin/orderResumes/" + str( orderResumeId) + "/stage" object = get_requests(url=url, headers=header, remark="查询简历阶段") meassage = object['message'] assert_equal("操作成功", meassage, "查询简历阶段", "查询简历阶段接口测试失败")
def get_www_company_id(): url = 'https://www.lagou.com/c/myhome.html' header = get_header('https://www.lagou.com') get_requests(url=url, headers=header) result = requests.get(url=url, headers=header, allow_redirects=False, verify=False) company_url = result.headers['Location'] try: company_id = re.findall(r'http://c.hr.lagou.com/gongsi/(.+?).html', company_url)[0] except (IndexError, TypeError): company_id = 0 return company_id
def get_info(userToken): url = 'https://gate.lagou.com/v1/entry/cuser/baseStatus/get' header = app_header_999(userToken, DA=False) return get_requests(url=url, headers=header, remark="跳转到首页,获取C端用户信息", rd='曾小宁')
def get_info(userToken, ip_port=None, userId=None): url = 'https://gate.lagou.com/v1/entry/config/appSetting/get' header = app_header_999(userToken, DA=False, userId=userId) return get_requests(url=url, headers=header, remark="查询app端配置", ip_port=ip_port)
def resume_preview_info(resumeId, stage): url = f'https://easy.lagou.com/resume/preview_info.json?resumeId={resumeId}' header = get_code_token( f"https://easy.lagou.com/can/new/index.htm?can=true&stage={stage}&needQueryAmount=true&newDeliverTime=0&pageNo=1" ) remark = '查看简历的预览信息' return get_requests(url=url, headers=header, remark=remark)
def get_baseStatus(userToken, publisherId=None, ip_port=None): url = 'https://gate.lagou.com/v1/entry/buser/baseStatus/get' header = app_header_999(userToken, DA=False, userId=publisherId) return get_requests(url=url, headers=header, remark="获取HR的基本状态", ip_port=ip_port)
def get_im_entrance(userToken, ip_port=None, userId=None): url = 'https://gate.lagou.com/v1/entry/config/appSetting/getIMEntrance' header = app_header_999(userToken, DA=False, userId=userId) return get_requests(url=url, headers=header, remark="查询APP消息页活动入口", ip_port=ip_port)
def list(): url = 'https://jf.lagou.com/integral/mall/goods/list.json' data = {'pageNo': 1, 'pageSize': 10, 'isShowAd': 0} return get_requests(url=url, data=data, remark='商品列表') # list()
def flow(): url='https://jf.lagou.com/integral/mall/gouyin/flow.json' # header=get_code_token('') data={'queryFlowType':0,'pageNo':1,'pageSize':10} return get_requests(url=url,data=data,remark='勾印流水') # flow()
def goods(): login('00853', '05180001') url = 'https://jf.lagou.com/integral/mall/my/goods.json' return get_requests(url, remark='我兑换的商品') # goods()
def move_to_interview(positionId, resumeOwnerId): url = 'https://easy.lagou.com/settings/template/in_temp.json?positionId=' + str( positionId) refer_listofcandidates_url = "https://easy.lagou.com/can/index.htm" listofcandidates_header = get_code_token(refer_listofcandidates_url) r = get_requests(url=url, headers=listofcandidates_header) templateId = r['content']['rows'][0]['id'] arr_inerview_url = 'https://easy.lagou.com/can/arr_inerview.json' arr_inerview_data = { "resumeId": resumeOwnerId, "templateId": templateId, "linkMan": "宇琦", "address": "海置创投大厦4层", "linkPhone": "18500000000", "templateName": "宇琦", "interviewTime": 1545193800000, "interviewTimeStr": "2018-12-19 12:30:00", "addInfo": "欢迎来面试!", "sendNotice": 1, "forwardEmails": "*****@*****.**" } r = form_post(url=arr_inerview_url, data=arr_inerview_data, headers=listofcandidates_header, remark='面试') return r
def onlinepositions(): url = "https://gate.lagou.com/v1/entry/position/queryPositions?companyId=142475&pageNo=1&pageSize=5" return get_requests(url=url, headers=header, remark='在招职位列表页', rd='royliu') #onlinepositions()
def ScheduleList(userid): ''' 查询未来28天排期 :param userid: :return: ''' login('00852', '20181205') position_url = 'https://easy.lagou.com/parentPosition/multiChannel/myOnlinePositions.json' position_header = get_code_token( 'https://easy.lagou.com/position/multiChannel/myOnlinePositions.htm') s = form_post(url=position_url, headers=position_header, data={'pageNo': 1}, remark='获取职位id') positionId = s['content']['data']['parentPositionVOs'][1]['positions'][0][ 'positionId'] print(positionId) header = get_app_header(userid) url = "https://gate.lagou.com/v1/zhaopin/topCard/" + str( positionId) + "/scheduleList" object = get_requests(url=url, headers=header, remark="查询未来28天排期") message = object['message'] assert_equal("操作成功", message, "查询未来28天排期接口正确", "查询未来28天排期接口错误") # MySchedule(100014641) # SendBusiness(100014641) # ScheduleList(100014641)
def get_submit_token_code(): url = 'https://gate.lagou.com/v1/neirong/account/users/0/' header = {'X-L-REQ-HEADER': json.dumps({'deviceType': 1}), 'Referer': 'https://account.lagou.com/v2/account/modifyPwd.html', 'Sec-Fetch-Mode': 'cors'} r = get_requests(url=url, headers=header, remark="获取token、code", rd='曾小宁') return r['submitCode'], r['submitToken']
def run_case( url, method, content_type, header, body, remark): if method == 'GET': jsonData = get_requests( url=url, headers=header, remark=remark) elif method == 'POST' or method == 'PUT' or method == 'DELETE': if content_type == 'application/x-www-form-urlencoded': requets_data = dict() for i in body['urlencoded']: requets_data[i['key']] = i['value'] jsonData = form_post( url=url, data=requets_data, headers=header, remark=remark) elif content_type == 'application/x-www-form-urlencoded': requets_data = json.loads(body['raw']) jsonData = json_post( url=url, data=requets_data, headers=header, remark=remark) else: jsonData = form_post(url=url, headers=header, remark=remark) return jsonData
def order_interview_queryList(ids): if ids == None: url = host + "/order/interview/queryList" else: url = host + "/order/interview/queryList?ids={}".format(ids) remark = "批量查询面试订单" return get_requests(url=url, headers=headers, remark=remark)