예제 #1
0
 def post(self, requests):
     self.online_info = UserOnlineInfo()
     telephone = requests.POST.get('telephone')
     commu_obj = CommuInformation.objects.filter(
         telephone_num=telephone).first()
     if commu_obj:
         online_obj = UserOnlineInfo.objects.filter(
             stu_id=commu_obj.stu_id).first()
         if online_obj.online_status == '1':
             return JsonResponse(json_response(-1, '已经在线了', data={}))
         if online_obj.online_status == '0':
             UserOnlineInfo.objects.filter(stu_id=commu_obj.stu_id).update(
                 online_status='1')
             data = {'token': online_obj.token}
             return JsonResponse(json_response(1, '登录成功', data=data))
         self.online_info.stu_id = commu_obj.stu_id
         self.online_info.online_status = 1
         encoding_str = 'Clamorous' + commu_obj.stu_id + telephone
         token = self.init_md5(encoding_str.encode('utf8'))
         self.online_info.token = token
         self.online_info.save()
         data = {'token': token}
         return JsonResponse(json_response(1, '登录成功', data=data))
     else:
         return JsonResponse(json_response(-1, '没有对应学生,请修改手机号信息', data={}))
예제 #2
0
def get_job(requests):
    if requests.method == "GET":
        page = requests.GET.get('page', 0)
        page = int(page)
        print('page:', page)
        if page < 0:
            return JsonResponse(json_response(-1, '页面参数错误', data={}))
        if page == 0:
            start_item = 0
            end_item = 10
        else:
            start_item = (page - 1) * 10
            end_item = page * 10
    jobs = EmployeeInfo.objects.filter(id__gte=start_item).filter(
        id__lt=end_item)
    data = []
    for job in jobs:
        # 把Object对象转换成Dict对象
        dict = {
            'id': job.id,
            'company_name': job.company_name,
            'job_name': job.job_name,
            'address': job.address,
            'putdate': job.putdate,
            'responsibility': job.responsibility,
            'telephone': job.telephone,
            'qualification': job.qualification,
            'e_mail': job.e_mail,
            'remarks': job.remarks,
            'linkman': job.linkman,
        }
        data.append(dict)
    return JsonResponse(json_response(1, '成功', data=data))
예제 #3
0
def zhaopin(requests):
    if requests.method == "POST":
        page = requests.POST.get('page')
        print(page)
        base_url = 'http://graduate.buct.edu.cn/jycy/xyzp/'
        if int(page) == 0:
            rq_url = 'http://graduate.buct.edu.cn/jycy/xyzp/index.htm'
        else:
            rq_url = 'http://graduate.buct.edu.cn/jycy/xyzp/index{}.htm'.format(
                page)
        headers = {'Connection': 'close'}
        resp = rq.get(rq_url, headers=headers)
        data = []
        soup_string = BeautifulSoup(resp.content.decode('utf8'), "html.parser")
        try:
            div_list = soup_string.find(name='div', class_='list02')
            lis = div_list.find(name='ul').find_all(name='li')
        except Exception as e:
            print(e)
            return JsonResponse(json_response(-1, '没有更多数据', data=data))
        i = 1
        for li in lis:
            date = li.find(name='span').text
            alabel = li.find(name='a')
            atext = alabel.text
            pattern = re.compile('【(.*?)】')
            result = re.search(pattern, atext)
            item = {}
            content = atext
            try:
                style = result.group(0)
                item['style'] = style
                content = atext.replace(style, '')
            except Exception as e:
                item['style'] = ''
            item['detail_url'] = base_url + alabel['href']
            item['id'] = i
            item['date'] = date
            item['content'] = content

            md5 = init_md5(item['detail_url'])
            result = CampusHireInfo.objects.filter(md5=md5).first()
            if not result:
                obj = CampusHireInfo(style=item['style'], date=item['date'], \
                                   detail_url=item['detail_url'], content=item['content'], md5=md5)
                obj.save()
            else:
                item['date'] = result.date
                item['style'] = result.style
                item['detail_url'] = result.detail_url
                item['content'] = result.content

            i += 1
            data.append(item)
        return JsonResponse(json_response(1, '成功', data=data))

    data = []
    return JsonResponse(json_response(-1, '请求方式有误', data=data))
예제 #4
0
 def post(self, requests):
     telephone = requests.POST.get('telephone')
     commu_obj = CommuInformation.objects.filter(
         telephone_num=telephone).first()
     if commu_obj:
         online_obj = UserOnlineInfo.objects.filter(
             stu_id=commu_obj.stu_id).first()
         if online_obj.online_status == '1':
             UserOnlineInfo.objects.filter(stu_id=commu_obj.stu_id).update(
                 online_status='0')
             return JsonResponse(json_response(1, '下线成功', data={}))
         if online_obj.online_status == '0':
             return JsonResponse(json_response(-1, '已经是下线状态', data={}))
     else:
         return JsonResponse(json_response(-1, '没有对应学生,下线失败', data={}))
예제 #5
0
def get_research(requests):
    if requests.method == "POST":
        page = requests.POST.get('page')
        base_url = 'http://research.buct.edu.cn/zlcg/'
        if int(page) == 0:
            rq_url = 'http://research.buct.edu.cn/zlcg/index.htm'
        else:
            rq_url = 'http://research.buct.edu.cn/zlcg/index{}.htm'.format(
                page)
        resp = rq.get(rq_url)
        data = []
        try:
            soup_string = BeautifulSoup(resp.content, "html.parser")
            notice_list = soup_string.find(name='ul', class_='notice_list')
            lis = notice_list.find_all(name='li')
        except Exception as e:
            print(e)
            return JsonResponse(json_response(-1, '没有更多数据', data=data))
        i = 1
        for li in lis:
            item = {}
            span = li.find(name='span')
            item['id'] = i
            item['day'] = span.find(name='i').text.strip()
            alabel = li.find(name='a')
            item['style'] = alabel.find(name='span').text.strip()
            item['month'] = span.find(name='strong').text.strip()
            item['detail_url'] = base_url + alabel['href']
            alabel.span.decompose()
            item['content'] = alabel.text.strip()

            md5 = init_md5(item['detail_url'])
            result = ResearchInfo.objects.filter(md5=md5).first()
            if not result:
                obj = ResearchInfo(day=item['day'],style=item['style'],month=item['month'], \
                                   detail_url=item['detail_url'],content=item['content'],md5=md5)
                obj.save()
            else:
                item['day'] = result.day
                item['style'] = result.style
                item['month'] = result.month
                item['detail_url'] = result.detail_url
                item['content'] = result.content
            data.append(item)
            i += 1
        return JsonResponse(json_response(1, '成功', data=data))
    data = []
    return JsonResponse(json_response(-1, '请求方式有误', data=data))
예제 #6
0
def get_research_detail(requests):
    if requests.method == "GET":
        data = {}
        url = requests.GET.get('url', '')
        try:
            resp = rq.get(url)
            soup_string = BeautifulSoup(resp.content.decode('utf8'),
                                        "html.parser")
            html = soup_string.find(name='div', class_='pageArticle article02')
            imgs = html.find_all(name='img')
            for img in imgs:
                img['src'] = img['src'].replace('../..',
                                                'http://graduate.buct.edu.cn')
            data['html'] = str(html)
            return JsonResponse(json_response(1, '成功', data=data))
        except Exception as e:
            print(e)
            return JsonResponse(json_response(-1, '请求网页失败', data=data))
    data = []
    return JsonResponse(json_response(-1, '请求方式有误', data=data))
예제 #7
0
 def get(self, requests):
     return JsonResponse(json_response(-1, '请求方式错误', data={}))