Esempio n. 1
0
def find_sources(source1, source2):
    global all_source1
    global all_source2

    #find all sources in data (only need to do once)
    if len(all_source1) == 0 or len(all_source2) == 0:
        cursor.execute("SELECT DISTINCT source1 FROM title_comparison")
        all_source1 = cursor.fetchall()  #format: list of tuples
        all_source1 = [x[0] for x in all_source1]
        formatted_source1 = [(x, True) for x in all_source1]

        cursor.execute("SELECT DISTINCT source2 FROM title_comparison")
        all_source2 = cursor.fetchall()  #format: list of tuples
        all_source2 = [x[0] for x in all_source2]
        formatted_source2 = [(x, True) for x in all_source2]

    if len(source1) > 0:
        c = set(source1)
        formatted_source1 = [(x, x in c) for x in all_source1]
    if len(source2) > 0:
        c = set(source2)
        formatted_source2 = [(x, x in c) for x in all_source2]

    source1_form = FieldSelection(formatted_source1)
    source2_form = FieldSelection(formatted_source2)

    return source1_form, source2_form
    def check():
        firstname = firstnameEntry.get().strip()
        lastname = lastnameEntry.get().strip()
        address = addressEntry.get().strip()
        fatherName = fatherNameEntry.get().strip()
        fatherNo = fatherNoEntry.get().strip()
        fatherProfession = fatherProfessionEntry.get().strip()
        motherName = motherNameEntry.get().strip()
        motherNo = motherNoEntry.get().strip()
        motherProfession = motherProfessionEntry.get().strip()
        studentId = studentIdEntry.get().strip()
        std = stdEntry.get().strip()
        rollno = rollnoEntry.get().strip()
        dobDate = dobDateVar.get()
        dobMonth = dobMonthVar.get()
        dobYear = dobYearVar.get()
        gender = genderVar.get().strip()
        section = sectionVar.get()

        issue_counter = 0
        details = [
            'firstname', 'lastname', 'address', 'fatherName', 'fatherNo',
            'fatherProfession', 'motherName', 'motherNo', 'motherProfession',
            'studentId', 'std', 'rollno', 'gender'
        ]

        for detail in details:
            if vars()[detail] == '':
                messagebox.showerror('Student Registration',
                                     'Please fill all the details')
                print(detail)
                issue_counter += 1
                break
        if issue_counter == 0:
            cursor.execute('select studentId from studentdata')
            ids = cursor.fetchall()

            for i in range(len(ids)):
                if (studentId, ) in ids:
                    messagebox.showerror(
                        'Student Registration',
                        'Student ID already exists. Please use a unique Student ID'
                    )
                    issue_counter += 1

            cursor.execute('select std, section, rollno from studentdata')
            data = cursor.fetchall()
            for i in range(len(data)):
                if (std, section, int(rollno)) in data:
                    messagebox.showerror(
                        'Student Registration',
                        'Roll no. already exists in the class')
                    issue_counter += 1

        if issue_counter == 0:
            submit()
Esempio n. 3
0
def adminsdata():
    if request.method == 'GET':
        cursor = db.cursor()
        bus_stop_crowd = "select CCTV_ID, NAME,COUNT from SCHEDULE where FACILITY  = 'STOP'"
        bus_crowd = "select CCTV_ID,NAME,COUNT,concat('<a href=\"https://www.google.com/maps/@',latitude,',' , longitude,',17z\">',latitude,',',longitude ,'</a>') as Location from transport.SCHEDULE as S left join  traccar.tc_positions as T on T.deviceid = S.deviceid where S.FACILITY  = 'BUS' and T.id = ( SELECT max(T.id) FROM traccar.tc_positions )"
        cursor.execute(bus_stop_crowd)
        bus_stop_result = cursor.fetchall()
        cursor.execute(bus_crowd)
        stop_result = cursor.fetchall()
        db.commit()
        return jsonify(bus_stop_result, stop_result)
Esempio n. 4
0
def table_helper(data, fields, ranges, source1, source2):
    from_date, to_date = data[-1][1].split(" - ")

    # Convert dates from the daterange plugin's format to Year-Month-Day
    from_date = datetime.strptime(from_date, '%m/%d/%Y').strftime("%Y-%m-%d")
    to_date = datetime.strptime(to_date, '%m/%d/%Y').strftime("%Y-%m-%d")

    # Convert ranges from semicolon delimited strings to lists
    converted_ranges = []
    for r in ranges:
        converted_ranges.append(tuple(map(int, r.split(";"))))

    # Query by the relevant fields
    q = "SELECT "

    for field in fields:
        q += "%s, " % field

    q = q.strip().strip(",")
    q += " FROM title_comparison WHERE "

    # Filter by user input field ranges
    for i in range(len(fields)):
        if not fields[i] in text_fields:
            q += "CAST(%s AS float) >= %f and CAST(%s AS float) <= %f and " % \
                 (fields[i], converted_ranges[i][0], \
                    fields[i], converted_ranges[i][1])

    # Filter by date range
    q += "title1_date >= '%s' and title1_date" \
         "<= '%s'" % (from_date, to_date)

    # Filter by sources
    if len(source1) > 0:
        q += " and ("
        for i in range(len(source1)):
            q += "source1 = '{}'".format(source1[i])
            q += " or "

        q = q.strip().strip(" or")
        q += ")"

    if len(source2) > 0:
        q += " and ("
        for i in range(len(source2)):
            q += "source2 = '{}'".format(source2[i])
            q += " or "

        q = q.strip().strip(" or")
        q += ")"

    # Execute the query
    cursor.execute(q)

    # Fetch all results of the query
    results = cursor.fetchall()

    # Make a dynamic HTML table to display the selected fields
    table = makeHTMLTable(fields, results)
    return table
    def check():
        if len(studentIdEntry.get().strip()) == 0:
            messagebox.showerror('Attendence', "Please enter a Student ID")

        elif len(yearEntry.get().strip()) != 4:
            messagebox.showerror('Attendence', 'Please enter a valid year')

        issue_counter = 0
        variables = [
            janVar, febVar, marVar, aprVar, mayVar, junVar, julVar, augVar,
            sepVar, octVar, novVar, decVar
        ]

        for variable in variables:
            if variable.get() == '':
                messagebox.showerror('Attendence',
                                     'Please fill all the details')
                issue_counter += 1
                break
        studentId = studentIdEntry.get().strip()
        year = yearEntry.get().strip()
        cursor.execute('use school')
        cursor.execute(
            'select * from attendence where studentId = %s and year = %s' %
            (studentId, year))
        data = cursor.fetchall()
        if len(data) != 0:
            messagebox.showerror('Attendence', "Data already exists")
            issue_counter += 1

        if issue_counter == 0:
            submit()
Esempio n. 6
0
def get_logs():
    sql = ("SELECT * FROM logs ORDER BY created DESC")
    cursor.execute(sql)
    result = cursor.fetchall()
    
    for row in result:
        print(row[1])
Esempio n. 7
0
def test():
    user_id = session['logged_id']
    cursor.execute(
        'SELECT * FROM message where user_id = %s ORDER BY c_time DESC',
        (user_id, ))
    m = cursor.fetchall()
    print(m)
Esempio n. 8
0
def query_line_id(user_token: str) -> str:
    logging.debug(f"querying line id with token {user_token}")
    cmd = '''
    SELECT user_line_id FROM cq_users WHERE user_token = (%s);
    '''
    cursor.execute(cmd, (user_token, ))
    return cursor.fetchall()[0][0]
Esempio n. 9
0
def get_tv_shows():
    sql = ("SELECT * FROM tv_shows ORDER BY created DESC")
    cursor.execute(sql)
    result = cursor.fetchall()

    for row in result:
        print(row)
Esempio n. 10
0
def show_entries():
    if not session.get('logged_in'):
        return redirect(url_for('users.login'))
    user_id = session['logged_id']
    cursor.execute(
        "SELECT * FROM message where user_id = %s ORDER BY c_time DESC",
        (user_id, ))
    m = cursor.fetchall()
    messages = list(m)
    for i, message in enumerate(messages):
        message = list(message)
        user_id = message[1]
        cursor.execute("SELECT nickname FROM users where user_id = %s",
                       (user_id, ))
        u = cursor.fetchone()
        message.append(u[0])
        cursor.execute(
            "SELECT * FROM like_msg where msg_id = %s AND user_id = %s",
            (message[0], user_id))
        like = cursor.fetchone()
        if like is not None:
            like_flag = 1
        else:
            like_flag = 0
        message.append(like_flag)
        messages[i] = message

    return render_template('show_entries.html', entries=messages)
Esempio n. 11
0
 def SQLNameExist(self,player,name):
     sql = 'select id from tb_guild where name=%s'
     params=(name,)
     cursor.execute(sql,params)
     results =cursor.fetchall()
     if not results:
         return GS2CGuildNameRepeat(player)
     return results
Esempio n. 12
0
def homedata():
    origin = request.form['origin']
    destination = request.form['destination']
    seat_count = "select STOP_CROWD,EMPTY_SEATS from BUS_STOP where ORIGIN  = %s  and DESTINY = %s"
    param = (origin, destination)
    cursor.execute(seat_count, param)
    seat = cursor.fetchall()
    return jsonify(seat)
Esempio n. 13
0
def index():
    cursor.execute("SELECT * FROM parking")
    result = cursor.fetchall()
    print(url_for('index'))
    print(url_for('login'))
    print(url_for('login', next='/'))
    print(url_for('profile', username='******'))
    return jsonify(result)
Esempio n. 14
0
def home():
    if request.method == 'GET':
        cursor = db.cursor()
        bus_stop_names = 'SELECT DISTINCT ORIGIN FROM BUS_STOP'
        cursor.execute(bus_stop_names)
        result = cursor.fetchall()
        db.commit()
        return render_template('home.html', bus_stops=result)
Esempio n. 15
0
async def home2(request):
    cursor.execute('SELECT * FROM users LIMIT 10')
    records = cursor.fetchall()
    rows=[]
    for row in records:
        rows.append({'title':row['title']})
    
    return response.json(rows)
Esempio n. 16
0
def selectGender():
    cursor.execute(f"""SELECT AGE, 
    (CASE WHEN gender = 1 THEN 'male'
    ELSE 'female'
    END) AS gender, height, weight
    FROM medical_examination WHERE height >= 160""")
    result = cursor.fetchall()
    print(result)
def autoupdate(sc):

    datetime.today().strftime('%Y-%m-%d')
    print(datetime.today().strftime('%Y-%m-%d'))
    date_now = datetime.today().strftime('%Y-%m-%d')

    model_detail = 'SELECT URL_EMPTY_SEAT, URL_STOP_CROWD, ROUTE_ID FROM BUS_STOP'
    cursor.execute(model_detail)
    result = cursor.fetchall()

    ## i DECLARED AS 0 , IT REPRESENTS THE ROWS
    i = 0

    ## WHILE LOOP
    while i < 2666:
        model_url_seat = result[i][0]
        model_url_stop = result[i][1]
        _id = result[i][2]

        # NOTE: generate iam_token and retrieve ml_instance_id based on provided documentation
        header = {
            'Content-Type': 'application/json',
            'Authorization': 'Bearer ' +
            "eyJraWQiOiIyMDIwMDYyNDE4MzAiLCJhbGciOiJSUzI1NiJ9.eyJpYW1faWQiOiJpYW0tU2VydmljZUlkLTkxNDYzMTlhLWNkNTMtNGRiNi05ODE4LTM0NmRlMjQxOGM3NCIsImlkIjoiaWFtLVNlcnZpY2VJZC05MTQ2MzE5YS1jZDUzLTRkYjYtOTgxOC0zNDZkZTI0MThjNzQiLCJyZWFsbWlkIjoiaWFtIiwiaWRlbnRpZmllciI6IlNlcnZpY2VJZC05MTQ2MzE5YS1jZDUzLTRkYjYtOTgxOC0zNDZkZTI0MThjNzQiLCJuYW1lIjoiU2VydmljZSBjcmVkZW50aWFscy0xIiwic3ViIjoiU2VydmljZUlkLTkxNDYzMTlhLWNkNTMtNGRiNi05ODE4LTM0NmRlMjQxOGM3NCIsInN1Yl90eXBlIjoiU2VydmljZUlkIiwiYWNjb3VudCI6eyJ2YWxpZCI6dHJ1ZSwiYnNzIjoiNzdjNmZhNzgxNzNkNGU3OWIwNWJiYmZmOTVkNzhhOGEifSwiaWF0IjoxNTk0NzYxNjExLCJleHAiOjE1OTQ3NjUyMTEsImlzcyI6Imh0dHBzOi8vaWFtLmJsdWVtaXgubmV0L2lkZW50aXR5IiwiZ3JhbnRfdHlwZSI6InVybjppYm06cGFyYW1zOm9hdXRoOmdyYW50LXR5cGU6YXBpa2V5Iiwic2NvcGUiOiJpYm0gb3BlbmlkIiwiY2xpZW50X2lkIjoiZGVmYXVsdCIsImFjciI6MSwiYW1yIjpbInB3ZCJdfQ.pHBGLUFeZbdWeBFWNzQJgQwIiLXZ_ferEtZ7Pealw3ltnZpn7i1-2Jjybp7EByORud-9MqC7yvjZpGmK2fIgyjAPng3jzRbNlz2_JEiDQlX5NgcT8UiFFgUbSlym35us_lJoB1ZrRpbziOfLuYaiF_r6y1EsncwYccWqSLyjKayAWpKHlAWjwSiNK8aqpIZmz667AsU6U1s1517cFQ2R-bOH9i-Plbqf4QrXhuVo8Nkv0OAYXzRTSnLKIR-oY6Z73OFnY1EYUKRcnuVuskNkbSd39pm4rKQIQW7HjuSflGPhX4NrbIl7VNp6MmS-EUFhIMDZHEexoLSqgENkmGgphg",
            'ML-Instance-ID': "f072af13-d309-42b8-9718-617d23a56d2a"
        }

        # NOTE: manually define and pass the array(s) of values to be scored in the next line
        payload_scoring = {
            "input_data": [{
                "fields": ["Date"],
                "values": [[date_now]]
            }]
        }

        response_scoring_seat = requests.post(model_url_seat,
                                              json=payload_scoring,
                                              headers=header)
        seat = json.loads(response_scoring_seat.text)
        score_seat = seat['predictions'][0]['values'][0][-1]
        pred_seat = round(score_seat)

        response_scoring_stop = requests.post(model_url_stop,
                                              json=payload_scoring,
                                              headers=header)
        stop = json.loads(response_scoring_stop.text)
        score_stop = stop['predictions'][0]['values'][0][-1]
        pred_stop = round(score_stop)
        i += 1
        update_stat = "UPDATE BUS_STOP SET EMPTY_SEATS = %s, STOP_CROWD = %s WHERE ROUTE_ID = %s"
        params = (pred_seat, pred_stop, _id)
        cursor.execute(update_stat, params)
        db.commit()
    print('EXIST')
    ## AFTER EVERY 30 SECS THE PROGRAM IS RUN AGAIN
    s.enter(1, 1, autoupdate, (sc, ))
Esempio n. 18
0
def get_logs():
    sql = ("SELECT * FROM logs ORDER BY created DESC")
    cursor.execute(sql)
    result = cursor.fetchall()
    size = len(result)
    
    if size != 0:
        for row in result:
            print(row[0])
    else:
        print("There is no log records!")
Esempio n. 19
0
def check_if_run():
    sql = "SELECT next_run FROM controller WHERE function = 'run'"
    try:
        cursor.execute(sql)
        result = cursor.fetchall()
        db.commit()
        for row in result:
            if row[0] == 1:
                return True
            elif row[0] != 1:
                return False
    except:
        pass
def autoupdate(sc):

    sql = 'SELECT  longitude, latitude FROM traccar.tc_positions WHERE id = ( SELECT max(id) FROM traccar.tc_positions )'
    cursor.execute(sql)
    result = cursor.fetchall()
    print(result)

    update_add = "UPDATE SCHEDULE SET LOCATION = '%s' WHERE FACILITY = 'BUS'"
    params = (result)
    print(params)
    cursor.execute(update_add, params)
    db.commit()
    print('Upadting SQL')

    s.enter(5, 1, autoupdate, (sc, ))
Esempio n. 21
0
    def GetByName(self,name):
        account = self.m_NameAccount.get(name, None)
        if account:
            return account
        params=(name,)
        cursor.execute("select id,password from tb_account where name=%s",params)
        results=cursor.fetchall()
        if not results:
            return None
        name,password=results[0]

        account = Caccount(name,password)
        self.Add(account,account.m_ID)

        return account
Esempio n. 22
0
def data():
    data = [(k, v) for k, v in request.form.items()]
    fields, ranges = zip(*(data[:-1]))
    from_date, to_date = data[-1][1].split(" - ")

    # Convert dates from the daterange plugin's format to Year-Month-Day
    from_date = datetime.strptime(from_date, '%m/%d/%Y').strftime("%Y-%m-%d")
    to_date = datetime.strptime(to_date, '%m/%d/%Y').strftime("%Y-%m-%d")

    # Convert ranges from semicolon delimited strings to lists
    converted_ranges = []
    for r in ranges:
        converted_ranges.append(tuple(map(int, r.split(";"))))

    # Query the POSTGRES database using dynamic SQL
    cursor.execute("select * from Articles")

    # Query by the relevant fields
    q = "SELECT "
    for field in fields:
        q += "%s, " % field

    # Filter by user input field ranges
    q = q.strip().strip(",")
    q += " FROM articles WHERE "

    for i in range(len(fields)):
        if not fields[i] in text_fields:
            q += "CAST(%s AS float) >= %f and CAST(%s AS float) <= %f and " % \
                 (fields[i], converted_ranges[i][0], \
                    fields[i], converted_ranges[i][1])

    # Filter by date range
    q += "title1_date >= '%s' and title1_date " \
         "<= '%s'" % (from_date, to_date)

    # Execute the query
    cursor.execute(q)

    # Fetch all results of the query
    results = cursor.fetchall()

    # Make a dynamic HTML table to display the selected fields
    table = makeHTMLTable(fields, results)

    return render_template("data.html", table=table)
Esempio n. 23
0
def high_std_dev_fields():
    global numeric_field_names
    q = "SELECT "
    for field in numeric_field_names:
        q += "STDDEV({}::numeric), ".format(field)

    q = q.strip().strip(",")
    q += " FROM title_comparison"
    cursor.execute(q)
    results = cursor.fetchall()

    combined = []
    for i in range(len(results[0])):
        result = results[0][i]
        combined.append((result, numeric_field_names[i]))

    combined.sort(reverse=True)
    return sorted([combined[i][1] for i in range(5)])
Esempio n. 24
0
def main():
    """check if any bike be returned from 2020/12/01 to today, if have any, then save return time to database"""

    web_towed_bikes = []
    start_day = date(2020, 12, 1)
    end_day = date.today()
    delta = timedelta(days=1)
    print('getting all entry from 2020/12/01 to today from website...')
    dates = []
    while start_day <= end_day:
        dates.append(start_day)
        start_day += delta

    with concurrent.futures.ThreadPoolExecutor() as executor:
        results = executor.map(crawl_towbike_at, dates)
    print('have get all data from websites')
    for result in results:
        web_towed_bikes += result

    db_towed_bikes = []
    print('get all entry from 2020/12/01 to today from mySQL...')
    cursor.execute("SELECT id, bike_id, time, return_time FROM towed_bike")
    for _id, bike_id, time, return_time in cursor.fetchall():
        db_towed_bikes.append(
            TowBike(_id=_id,
                    bike_id=bike_id,
                    time=time,
                    return_time=return_time))
    print(f'web bike count: {len(web_towed_bikes)}')
    print(f'db bike count : {len(db_towed_bikes)}')
    print('check for update...')
    return_bikes = [
        bike for bike in db_towed_bikes
        if bike not in web_towed_bikes and bike.return_time is None
    ]

    if return_bikes == []:
        print('(no update need)')
    else:
        for bike in return_bikes:
            cursor.execute("UPDATE towed_bike SET return_time=%s WHERE id=%s",
                           (datetime.now(), bike._id))
        db.commit()
        print(f'(update {len(return_bikes)} entries)')
Esempio n. 25
0
    def verifyStudent():
        studentId = studentIdEntry.get().strip()
        try:
            cursor.execute('select * from studentdata where studentId = %s' %
                           (studentId))
        except:
            messagebox.showerror('Attendence',
                                 'Please enter a valid Student ID')

        data = cursor.fetchall()
        if len(data) != 0:
            studentNameEntry.config(state='normal')
            name = data[0][1] + ' ' + data[0][2]
            studentNameEntry.delete(0, END)
            studentNameEntry.insert(0, name)
            studentNameEntry.config()

        else:
            messagebox.showerror('Attendence', 'No data found')
Esempio n. 26
0
def range_filter_helper(fields, ranges):
    global bounds

    #find fields with bounds (if haven't already)
    num_fields = [
        field for field in fields
        if not field in text_fields and not field in bounds
    ]

    # Query by the relevant fields
    q = "SELECT "

    for field in num_fields:
        q += "min(CAST(%s AS float)), " % field
        q += "max(CAST(%s AS float)), " % field

    # Filter by user input field ranges
    q = q.strip().strip(",")
    q += " FROM title_comparison"

    # Execute the query
    cursor.execute(q)

    # Fetch all results of the query
    try:
        results = cursor.fetchall()[0]
    except:
        pass

    #find min and max for each relevant field
    for i in range(len(num_fields)):
        try:
            lower = floor(results[2 * i])  #min value for field
            upper = ceil(results[2 * i + 1])  #max value for field
            bounds[num_fields[i]] = (lower, upper)
        except:
            bounds[num_fields[i]] = (-100, 100)

    form2 = FieldSliders(fields, bounds, ranges)

    return form2
Esempio n. 27
0
def routes():
    origin = request.form['origin']
    destination = request.form['destination']
    routes_db = "(SELECT BUS_NUMBER as 'BUS_NUMBER_1' , ORIGIN  as 'FROM', 'NA' as 'VIA',  DESTINY as 'TO' ,'NA' as 'BUS_NUMBER_2', STOP_COUNT AS 'TOTAL' FROM BUS_STOP WHERE ORIGIN = %s AND DESTINY = %s ) UNION ALL ( SELECT DISTINCT A.BUS_NUMBER as 'BUS_NUMBER_1', A.ORIGIN as 'FROM', B.ORIGIN as 'VIA' , B.DESTINY as 'TO', B.BUS_NUMBER as 'BUS_NUMBER_2', A.STOP_COUNT + B.STOP_COUNT as 'TOTAL' FROM BUS_STOP A JOIN BUS_STOP B ON A.DESTINY = B.ORIGIN WHERE A.ORIGIN = %s and B.DESTINY = %s ORDER BY 'TOTAL' ASC LIMIT 1)"
    params = (origin, destination, origin, destination)
    cursor.execute(routes_db, params)
    rv = cursor.fetchall()
    payload = []
    content = {}
    for result in rv:
        content = {
            'BUS_NUMBER_1': result[0],
            'FROM': result[1],
            'VIA': result[2],
            'TO': result[3],
            'BUS_NUMBER_2': result[4],
            'TOTAL': result[5]
        }
        payload.append(content)
        content = {}
    return jsonify(payload)
Esempio n. 28
0
def announcements():
    if request.method == 'GET':
        select_user = '******'
        cursor.execute(select_user)
        result = cursor.fetchall()
        db.commit()
        return render_template('announcements.html', alerts=result)
    if request.method == 'POST':
        post = request.form['post']
        link = request.form['link']
        type = request.form['type']
        sentiment = request.form['sentiment']
        print(post, link, type, sentiment)
        insert_announcement = "insert into ANNOUNCEMENTS (LINK,POST,TYPE,SENTIMENT) values (%s,%s,%s,%s)"
        params = (link, post, type, sentiment)
        # Insert announcements
        cursor.execute(insert_announcement, params)
        db.commit()
        announcements_id = cursor.lastrowid
        print(announcements_id)
        return jsonify([post, link, type, sentiment])
Esempio n. 29
0
def calculate(champions, attr, question, answer):
    cursor.execute(f"""SELECT weight FROM weights WHERE attr = "{attr}" """)
    weight = cursor.fetchone()[0]
    cursor.execute(
        "SELECT champion, `yes`, `probably`, `unknown`, `maybe`, `no`, (`yes` + `probably` + `unknown` + `maybe` + `no`) as total FROM attributes WHERE attr = ?",
        [attr])
    rows = cursor.fetchall()
    for row in rows:
        champion, yes, prob, unknown, maybe, no, total = row
        if champion not in champions:
            champions[champion] = 50

        distribution = [0.5, 0.2, 0.05]

        # Something like z distribution but I failed probability :(

        minus_two = row[max(1, answer.value - 2)] * distribution[2]
        minus_one = row[max(1, answer.value - 1)] * distribution[1]
        middle = row[answer.value] * distribution[0]
        plus_two = row[min(1, answer.value + 2)] * distribution[1]
        plus_one = row[min(1, answer.value + 1)] * distribution[2]
        score = sum([minus_one, minus_two, middle, plus_one, plus_two
                     ]) / total * weight
        champions[champion] += score
Esempio n. 30
0
def show(msg_id):
    user_id = session['logged_id']
    if request.method == 'GET':
        cursor.execute("SELECT * FROM message where msg_id = %s;", (msg_id,))
        m = cursor.fetchone()
        cursor.execute("SELECT * FROM comment where msg_id = %s;", (msg_id,))
        cs = cursor.fetchall()
        if cs is None:
            cs = ()
        cs = list(cs)
        for i, comment in enumerate(cs):
            comment = list(comment)
            cursor.execute("SELECT nickname FROM users where user_id = %s", (user_id,))
            u = cursor.fetchone()
            comment.append(u[0])
            cursor.execute("SELECT * FROM like_cmt where cmt_id = %s AND user_id = %s", (comment[0], user_id))
            like = cursor.fetchone()
            if like is not None:
                like_flag = 1
            else:
                like_flag = 0
            comment.append(like_flag)
            cs[i] = comment
    return render_template('comment/show.html', m=m, cs=cs)
Esempio n. 31
0
    def get():
        if studentIdEntry.get().strip() == '':
            messagebox.showerror('Attendence', 'Please enter a Student ID')

        elif yearEntry.get().strip() == '':
            messagebox.showerror('Attendence', 'Please enter a year')

        else:
            verifyStudent()
            studentId = studentIdEntry.get().strip()
            year = yearEntry.get().strip()

            try:
                cursor.execute(
                    'select * from attendence where studentId = %s and year = %s'
                    % (studentId, year))
            except:
                messagebox.showerror('Attendence', 'No data found')

            data = cursor.fetchall()
            if len(data) != 0:
                field = data[0]
                jan = field[2]
                feb = field[3]
                mar = field[4]
                apr = field[5]
                may = field[6]
                jun = field[7]
                jul = field[8]
                aug = field[9]
                sep = field[10]
                octo = field[11]
                nov = field[12]
                dec = field[13]
                total = jan + feb + mar + apr + may + jun + jul + aug + sep + nov + octo + nov + dec
                percent = str(total / 3) + '%'

                if len(janEntry.get().strip()) != 0:

                    janEntry.config(state='normal')
                    febEntry.config(state='normal')
                    marEntry.config(state='normal')
                    aprEntry.config(state='normal')
                    mayEntry.config(state='normal')
                    junEntry.config(state='normal')
                    julEntry.config(state='normal')
                    augEntry.config(state='normal')
                    sepEntry.config(state='normal')
                    octEntry.config(state='normal')
                    novEntry.config(state='normal')
                    decEntry.config(state='normal')
                    totalEntry.config(state='normal')
                    percentEntry.config(state='normal')

                    janEntry.delete(0, END)
                    febEntry.delete(0, END)
                    marEntry.delete(0, END)
                    aprEntry.delete(0, END)
                    mayEntry.delete(0, END)
                    junEntry.delete(0, END)
                    julEntry.delete(0, END)
                    augEntry.delete(0, END)
                    sepEntry.delete(0, END)
                    octEntry.delete(0, END)
                    novEntry.delete(0, END)
                    decEntry.delete(0, END)
                    totalEntry.delete(0, END)
                    percentEntry.delete(0, END)

                janEntry.insert(0, jan)
                janEntry.config(state='disabled', disabledforeground='black')
                febEntry.insert(0, feb)
                febEntry.config(state='disabled', disabledforeground='black')
                marEntry.insert(0, mar)
                marEntry.config(state='disabled', disabledforeground='black')
                aprEntry.insert(0, apr)
                aprEntry.config(state='disabled', disabledforeground='black')
                mayEntry.insert(0, may)
                mayEntry.config(state='disabled', disabledforeground='black')
                junEntry.insert(0, jun)
                junEntry.config(state='disabled', disabledforeground='black')
                julEntry.insert(0, jul)
                julEntry.config(state='disabled', disabledforeground='black')
                augEntry.insert(0, aug)
                augEntry.config(state='disabled', disabledforeground='black')
                sepEntry.insert(0, sep)
                sepEntry.config(state='disabled', disabledforeground='black')
                octEntry.insert(0, octo)
                octEntry.config(state='disabled', disabledforeground='black')
                novEntry.insert(0, nov)
                novEntry.config(state='disabled', disabledforeground='black')
                decEntry.insert(0, dec)
                decEntry.config(state='disabled', disabledforeground='black')
                totalEntry.insert(0, total)
                totalEntry.config(state='disabled', disabledforeground='black')
                percentEntry.insert(0, percent)
                percentEntry.config(state='disabled',
                                    disabledforeground='black')

            else:
                messagebox.showerror('Attendence', 'No data found')
Esempio n. 32
0
 def Load(self):
     sql = 'select data from tb_guild where id=%s'
     params=(self.m_Id,)
     cursor.execute(sql,params)
     data = cursor.fetchall()
     self.Unpack(data)
Esempio n. 33
0
def autoupdate(sc):

    ## SELECT THE URL AND ID FROM DATABASE
    cctv_url = 'SELECT CCTV_URL, CCTV_ID FROM SCHEDULE'
    cursor.execute(cctv_url)
    result = cursor.fetchall()

    ## i DECLARED AS 0 , IT REPRESENTS THE ROWS
    i = 0

    ## WHILE LOOP
    while i < 41:
        url_out = result[i][0]
        _id = result[i][1]
        print(url_out)
        print(_id)
        url = url_out
        print(url)
        img_request = requests.get(url)
        img_arr = np.array(bytearray(img_request.content), dtype=np.uint8)
        img = cv2.imdecode(img_arr, -1)
        name = './data/img' + '.jpg'
        cv2.imwrite(name, img)
        ## IMAGE IS CAPTURED

        ## OPENED IN FILE FORMAT
        with open(name, 'rb') as images_file:

            ## PUT IN OKAY OR NOT OKAY MODEL
            classes = visual_recognition.classify(
                images_file,
                threshold='0.6',
                classifier_ids='Bus_View_932757643').get_result()
            visual = json.loads(json.dumps(classes, indent=2))
            preds = visual['images'][0]['classifiers'][0]['classes'][0][
                'class']

            ## IF NOT OKAY DECLARED AS CROWDED
            if (preds) == 'Not Okay':
                count = -1
                print(count)

            ## IF OKAY PUT INTO HUMAN DETECTION TO GET THE HUMAN COUNT
            else:
                url1 = "https://gateway.watsonplatform.net/visual-recognition/api/v4/analyze?version=2019-02-11"
                payload = {
                    'features': 'objects',
                    'collection_ids': '465fd7ad-785a-4dab-b64b-08a937c9adcb',
                    'threshold': '0.15'
                }
                files = [('images_file', open(name, 'rb'))]
                headers = {
                    'Authorization':
                    'Basic YXBpa2V5OllnTlNySmNXRlNyTGxJa25nMlhzRW1ZNmstSEllcjNEU2huU05lb3A4RnVl'
                }
                response = requests.request("POST",
                                            url1,
                                            headers=headers,
                                            data=payload,
                                            files=files)
                json_con = json.loads(response.text.encode('utf8'))
                detect = json_con['images'][0]['objects']['collections'][0][
                    'objects']
                count = len(detect)
                print(count)

        ## TAKES TO THE NEXT ROW
        i += 1
        print('loop' + str(i))

        ## UPDATE THE COUNT TO SQL DATABASE
        update_stat = "UPDATE SCHEDULE SET COUNT = %s WHERE CCTV_ID = %s"
        params = (count, _id)
        print(params)
        cursor.execute(update_stat, params)
        db.commit()
        print('Upadting SQL')

    ## EXIST WHEN THE ROWS ARE COMPLTED
    print('exist')

    ## AFTER EVERY 30 SECS THE PROGRAM IS RUN AGAIN
    s.enter(30, 1, autoupdate, (sc, ))