python中读取slite3数据库到tabwedget

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中读取slite3数据库到tabwedget相关的知识,希望对你有一定的参考价值。

参考技术A python中读取slite3数据库到tabwedget?
要操作关系数据库,首先需要连接到数据库,一个数据库连接称为Connection;连接到数据库后,需要打开游标,称之为Cursor,通过Cursor执行SQL语句,然后,获得执行结果。Python定义了一套操作数据库的API接口

python中使用pyspark 读取和整理日志数据并将数据写入到es中去

代码:

import re
import datetime
from pyspark.sql import SparkSession
from pyspark import SparkContext
from elasticsearch import Elasticsearch
spark=SparkSession.builder.appName("lz").getOrCreate()
sc = SparkContext.getOrCreate()
es = Elasticsearch()
month_map = {\'Jan\': \'1\', \'Feb\': \'2\', \'Mar\':\'3\', \'Apr\':\'4\', \'May\':\'5\', \'Jun\':\'6\', \'Jul\':\'7\',
    \'Aug\':\'8\',  \'Sep\': \'9\', \'Oct\':\'10\', \'Nov\': \'11\', \'Dec\': \'12\'}

log_data = sc.textFile("/Desktop/data_doc/data_Log/sshlogin/03.txt") #使用spark读取本地日志文件


for b in log_data.toLocalIterator(): 
    #以迭代的方式来把一条条数据读取出来进行正则匹配,并最终将 dict作为body写入到es中去
    # e=\'Ambari:Mar  2 02:14:16 ambari sshd[16716]: Accepted password for root from 172.21.202.174 port 59886 ssh2\'#日志格式
    log_group=re.search(\'^(\\S+):(\\w{3})\\s+(\\d{1,2})\\s(\\d{2}:\\d{2}:\\d{2})\\s(\\S+)\\s(\\S+)\\[(\\d+)\\]:\\s(.+)\',b)
    if log_group:
        year=\'2019\'
        try:
            logtime = year+\'-\'+month_map[log_group.group(2)]+\'-\'+log_group.group(3)+\' \'+log_group.group(4) #将字段拼接成年月日的格式
            logtime = datetime.datetime.strptime(logtime,\'%Y-%m-%d %H:%M:%S\')
        except Exception as e:
           pass
        row = dict(_hostname=log_group.group(1), #将数据组成一个字典  k,v
                  syslog_timestamp=logtime,
                  hostname=log_group.group(5),
                  program=log_group.group(6),
                  pid=log_group.group(7),
                  msg = log_group.group(8))
        if re.match(\'^Accepted password for\',row[\'msg\']) or re.match(\'^Accepted publickey for\',row[\'msg\']) :

            msg_a=re.search(\'Accepted\\s\\w+\\sfor\\s(\\S+)\\sfrom\\s(\\d{2,3}\\.\\d{2,3}\\.\\d{2,3}\\.\\d{2,3})\\sport\\s(\\d+)\',row[\'msg\'])
            row[\'login_success\']=True
            row[\'login_success_msg\']={\'username\':msg_a.group(1),\'user_ip\':msg_a.group(2),\'user_port\':msg_a.group(3)}
        es.index(index=\'data_log02\',doc_type=\'test02\',body=row) #将数据写入到es中去
    else:
        break

 

 

转自:https://www.cnblogs.com/wangkun122/articles/10936938.html

以上是关于python中读取slite3数据库到tabwedget的主要内容,如果未能解决你的问题,请参考以下文章

从 python 读取多个列表到 SQL 查询中

将数据从 csv 读取到类对象列表中 - Python

使用python读取excel中的数据,并重新写入到新的excel中

python中使用pyspark 读取和整理日志数据并将数据写入到es中去

Python 2.7 MySQLdb将从数据库读取的最后一行保存到文本文件中

Python:将数据从扭曲的套接字读取到 SWIG 结构中