-
Notifications
You must be signed in to change notification settings - Fork 0
/
smart.py
68 lines (46 loc) · 1.28 KB
/
smart.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# -*- coding: utf-8 -*-
import sys, pymysql, json
from termcolor import * #not yet used, but is here
from modules.sort import sortData #our code yeah
from modules.db import database
from urllib.parse import urlparse
global cur
try:
from access import db as data
except ImportError:
print("You have not edited access.py file")
try:
db = pymysql.connect(
host=data[0],
user=data[1],
passwd=data[2],
db=data[3],
autocommit=True)
cur = db.cursor()
database.createDatabase(cur)
except pymysql.MySQLError:
exit("Lack of MySQL connection")
except pymysql.InternalError:
exit("I don't know what have just happend")
except pymysql.NotSupportedError:
exit("I don't know what have just happened")
def addURL(url, addr, json):
sql = "INSERT INTO url (main_url, path, ip) VALUE (%s, %s, %s)"
table = urlparse(url)
if len(table.netloc) > 0:
netloc = table.netloc
else:
netloc = None
if len(table.path) > 0:
path = table.path
else:
path = None
cur.execute(sql, (netloc, path, addr))
if cur.rowcount == 1:
print(colored(url, 'red')+": added")
def checkURL(url, addr, json):
sql = "SELECT ip FROM url WHERE ip=%s"
cur.execute(sql, (addr))
res = cur.fetchone()
if cur.rowcount == 0:
addURL(url, addr, json)