def cut_year(self, sql): with connect() as cur: cur.execute(sql) result = cur.fetchall() pattern = re.compile(r'\d{4}') words = re.findall(pattern, str(result)) return words
def i_inc(data): with passwd.connect() as cur: try: sql = ('insert into luhan_inc(user_domain, user_name,\ user_comment) values (%s, %s, %s)') cur.execute(sql, data) except Exception as e: print(e, 'error')
def get_oneproxie(): sql = 'select * from ip_list' with passwd.connect() as cur: cur.execute(sql) res = cur.fetchall() one = random.choice(res) proxie = {one[2]: one[2] + '://' + one[0] + ':' + one[1]} return proxie
def c_table_luhan_inc(): sql = 'create table luhan_inc(user_domain varchar(16),\ user_name varchar(32), user_comment varchar(512))' with passwd.connect() as cur: try: cur.execute(sql) except Exception as e: print(e)
def c_table_luhan_sab(): sql = 'create table luhan_sab(num int unique auto_increment,user_domain\ varchar(16) unique, user_sex char(4), user_area varchar(32),\ user_birth varchar(16))' with passwd.connect() as cur: try: cur.execute(sql) except Exception as e: print(e)
def get_proxies(): proxies = [] sql = 'select * from ip_list' with passwd.connect() as cur: cur.execute(sql) res = cur.fetchall() for procotol, ip, port in res: proxie = {res[2]: res[2] + '://' + res[0] + ':' + res[1]} proxies.append(proxie) return proxies
def c_table_ip_list(): sql = 'create table ip_list(id int unique auto_increment,\ ip varchar(16) primary key, port varchar(8) not null,\ procotol varchar(8) not null)' with passwd.connect() as cur: try: cur.execute(sql) print('成功创建') except Exception: print('表已经存在,可继续操作,或者删除表后重新运行。')
def cut_zh(self, sql, cut=False): with connect() as cur: cur.execute(sql) result = cur.fetchall() iterator = map(lambda word: word[0], result) words = list(iterator) if cut: pattern = re.compile(r'[\u4e00-\u9fa5_a-zA-Z0-9]+') re_words = ' '.join(re.findall(pattern, str(result))) fixed_words = jieba.cut(re_words, cut_all=False) words = list(filter(lambda word: word != ' ', fixed_words)) return words
def i_ip(data, many=0): print('i_ip') sql = 'insert into ip_list(ip, port, procotol) values\ (%s, %s, %s)' try: with passwd.connect() as cur: if many != 0: cur.executemany(sql, data) else: cur.execute(sql, data) except Exception as e: print(e)
def test_cut(self): # sql = "select user_area from luhan_sab limit 1000;" # sql = "select user_area from luhan_sab where user_area like '%大连%';" sql = "select user_comment from luhan_inc limit 10;" with passwd.connect() as cur: jieba.load_userdict = 'source/userdict.txt' cur.execute(sql) result = cur.fetchall() pattern = re.compile(r'[\u4e00-\u9fa5_a-zA-Z0-9]+') re_words = re.findall(pattern, str(result)) words = ' '.join(re_words) cut_words = jieba.lcut(words) print(cut_words)
def i_sab(data): sql = 'update luhan_sab set user_sex=%s, user_area=%s, user_birth=%s\ where num = %s' with passwd.connect() as cur: cur.execute(sql, data)
def s_domain(data): sql = 'select user_domain from luhan_sab where num=%s' with passwd.connect() as cur: cur.execute(sql, data) domain = cur.fetchone() return domain[0]
def rm_ip(): sql = 'delete from ip_list' with passwd.connect() as cur: cur.execute(sql)