Beispiel #1
0
def process(file_path):
    """
    :param file_path: the file path which is needed to process
    :return:None
    """
    try:
        doc_file = open(file_path, "r")
        docs = doc_file.read()
        doc_file.close()
    except:
        return

    doc_len = len(docs)
    d = DBHelper()

    doc_id = d.insert_record_with_var(
        "insert into wiki_doc(`doc_len`,`doc_path`) VALUES (%s,%s)",
        (doc_len, file_path))
    d = docs_to_vector(docs)
    t = term()
    d_t = doc_term()
    for word in d:
        if word not in stop_word:
            term_id = 0
            if t.check_term_exist(word):
                term_id = t.get_term_id(word)
            else:
                term_id = t.insert_term(word, 0)
            t.add_term_frequency(word)
            d_t.insert_record(term_id, doc_id, d[word])
Beispiel #2
0
def listen():
    """"监听发送来的消息,并使用socketio向所有客户端发送消息"""
    mes = {"status": "unknown error"}
    text = request.form.get('data')
    alias = request.form.get('alias')
    file_obj = request.files.get('files')

    if file_obj:
        filename = file_obj.filename
        file_obj.save('static/files/' + filename)
        text = filename

    if text:
        _db = DBHelper()
        _from = request.headers.get('X-Real-Ip') or request.remote_addr
        _type = 'file' if file_obj else 'text'
        _id = _db.insert([alias, _from, _type, text])
        data = _db.select_by_id(_id)
        data['alias'] = data['alias'] or data['id']
        text = data['content']
        data['content'] = text[:40].strip() + '...' if len(
            text) >= 40 else text
        socket_io.emit(data=json.dumps(data), event="mes")
        mes['status'] = "success"

    print(mes)
    return json.dumps(mes)
Beispiel #3
0
def index():
    """主页面"""
    # TODO 获取前10条
    _db = DBHelper()
    data = _db.select()
    for row in data:
        row['alias'] = row['alias'] or row['id']
        text = row['content']
        row['content'] = text[:40].strip() + '...' if len(text) >= 40 else text
    return render_template("index.html", data=data)
Beispiel #4
0
def operation():
    """operation"""
    if request.method == 'GET':
        _id = request.args.get('id')
        if not _id:
            return {'msg': 'error'}
        _db = DBHelper()
        data = _db.select_by_id(_id)
        filename = data['content']
        response = make_response(
            send_from_directory('static/files', filename, as_attachment=True))
        response.headers[
            "Content-Disposition"] = "attachment; filename={}".format(
                filename.encode().decode('latin-1'))
        return response

    elif request.method == 'POST':
        _id = request.form.get('id')
        if not _id:
            return {'msg': 'error'}
        _db = DBHelper()
        data = _db.select_by_id(_id)
        return json.dumps({'text': data['content']})
    def generate_map(self):
        m = folium.Map(location=[45.509484, -73.600519],
                       tiles="Stamen Terrain",
                       zoom_start=10.5)

        db = DBHelper()
        max_price = 300
        coordinates = db.get_coordinates(max_price=max_price)

        def hsv2rgb(h, s, v):
            return tuple(round(i * 255) for i in colorsys.hsv_to_rgb(h, s, v))

        def print_exception():
            exc_type, exc_obj, tb = sys.exc_info()
            f = tb.tb_frame
            lineno = tb.tb_lineno
            filename = f.f_code.co_filename
            linecache.checkcache(filename)
            line = linecache.getline(filename, lineno, f.f_globals)
            print('EXCEPTION IN ({}, LINE {} "{}"): {}'.format(
                filename, lineno, line.strip(), exc_obj))
            print(str(sys.exc_info()))

        print(f"points number: {len(coordinates)}")
        # I can add marker one by one on the map
        for coordinate in coordinates:
            amount_n = float((max_price - coordinate['amount']) / max_price)
            test_color = hsv2rgb(0.8, amount_n, 1 - amount_n)
            try:
                folium.Circle(
                    location=[coordinate['lat'], coordinate['lng']],
                    popup=
                    f"${coordinate['amount']} : https://www.airbnb.ca/rooms/{coordinate['room_id']}",
                    radius=10,
                    color='#%02x%02x%02x' % test_color,
                    fill=True
                    # fill_color='crimson'
                ).add_to(m)
            except:
                print(f"color: {test_color}")
                print_exception()

        # Save it as html
        m.save('mymap.html')
Beispiel #6
0
 def __init__(self):
     self.db = DBHelper()
     ssl._create_default_https_context = ssl._create_unverified_context
     print('爬虫开始行动了……')
import string
from db import DBHelper

db = DBHelper.DBHelper("10.16.6.120", "fanxing", "kugou2014", "d_fanxing")


def select(sql):
    return db.select(sql)


def insert(p_table_name, p_data):
    key = string.join(p_data.keys(), "`,`")
    values = [str(d) for d in p_data.values()]
    value = string.join(values, "','")
    real_sql = "INSERT INTO " + p_table_name + " (`" + key + "`) VALUES ('" + value + "')"
    print(real_sql)
    return db.insert(real_sql)


def insertBySql(sql):
    return db.insert(sql)
def main():

    app = Application()
    DBHelper().genschema()
    app.listen(os.getenv("PORT", 3000))
    IOLoop.instance().start()
Beispiel #9
0
import os
import time
from threading import Thread
from db import DBHelper

# import csv


db = DBHelper('localhost', 'webasudd', 'asudduser', 'asuddp@ss')


class MyThread(Thread):
    """
    A threading example
    """

    def __init__(self, node):
        """Инициализация потока"""
        Thread.__init__(self)
        self.node = node

    def run(self):
        """Запуск потока"""
        ping_list = []
        if len(self.node[5]) > 0:
            ping_list.append(os.system(f"ping -c 3 {self.node[5]} > /dev/null"))
        if len(self.node[6]) > 0:
            ping_list.append(os.system(f"ping -c 3 {self.node[6]} > /dev/null"))
        if len(self.node[7]) > 0:
            ping_list.append(os.system(f"ping -c 3 {self.node[7]} > /dev/null"))
        if sum(ping_list) > 0:
Beispiel #10
0
# -*-coding:utf-8-*-

from db import DBHelper
from item import UserItem

# 测试案例
db_ = DBHelper()
print(db_.exist('user', 1))

item = UserItem(1, 'lili', '14', 'xiha', 'http://')
db_.save()
import folium
from db import DBHelper
import colorsys
import sys
import linecache
import matplotlib.pyplot as plt
import matplotlib

font = {'size': 36}

matplotlib.rc('font', **font)
db = DBHelper()


class MapGenerator:
    def generate_map(self):
        m = folium.Map(location=[45.509484, -73.600519],
                       tiles="Stamen Terrain",
                       zoom_start=10.5)

        db = DBHelper()
        max_price = 300
        coordinates = db.get_coordinates(max_price=max_price)

        def hsv2rgb(h, s, v):
            return tuple(round(i * 255) for i in colorsys.hsv_to_rgb(h, s, v))

        def print_exception():
            exc_type, exc_obj, tb = sys.exc_info()
            f = tb.tb_frame
            lineno = tb.tb_lineno