Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import re
- import mysql.connector as mariadb
- def table_mail_acc():
- ###############################CONNECT TO SQLs##############################
- mariadb_connection_mailDB = mariadb.connect(host='', port='', user='', password='',
- database='', charset='utf8')
- mariadb_connection_phoneDB = mariadb.connect(host='', port='', user='',
- password='',
- database='', charset='utf8')
- #############################################################################
- #############################CURSOR SQLs####################################
- cursor_mail= mariadb_connection_mailDB.cursor()
- cursor_phone = mariadb_connection_phoneDB.cursor()
- #############################################################################
- ###########################SQL COMMAND######################################
- sql_command_mail = "SELECT name,username FROM mailbox"
- sql_command_phone = "SELECT p.post_title,pm.meta_value,pt.name FROM ph_posts p,ph_postmeta pm,ph_terms
- pt,ph_term_relationships ptr WHERE p.ID=pm.post_ID AND meta_key='e-mail' AND pt.term_id=ptr.term_taxonomy_id AND ptr.object_id=p.ID"
- #############################################################################
- ##########################CURSOR EXECUTE ####################################
- cursor_mail.execute(sql_command_mail)
- cursor_phone.execute(sql_command_phone)
- #############################################################################
- ########################SQL REQ RESULT#######################################
- result_sql_mail = cursor_mail.fetchall()
- result_sql_phone = cursor_phone.fetchall()
- #############################################################################
- #######################CONNECT CLOSE#########################################
- mariadb_connection_phoneDB.close()
- cursor_phone.close()
- mariadb_connection_mailDB.close()
- cursor_mail.close()
- #############################################################################
- ######################CREATE TABLE##########################################
- phonebook_table = []
- for phonebook_row in result_sql_phone:
- rework_table_phonebook = list(filter(None, (str(phonebook_row[0] + ' ' + phonebook_row[2]).split(" "))))
- phonebook_table.append(rework_table_phonebook)
- #############################################################################
- ##############################ALGORITM#######################################
- subscriber_table = []
- for data_user in phonebook_table:
- SURNAME = str(data_user[0].capitalize())
- FIRST_NAME = str(data_user[1])[0]
- MIDDLE_NAME = str(data_user[2])[0]
- full_match = re.compile(r'(' + re.escape(SURNAME) + r')\s+(' + re.escape(FIRST_NAME) + r')\W+(' + re.escape(MIDDLE_NAME) + r')\W+([0-9]+)\W+([\w.-]+@[\w.-]+)' )
- search_user = re.search(full_match,str(result_sql_mail))
- if search_user is not None:
- data_user.append(search_user.group(5))
- subscriber_table.append(data_user)
- if search_user == None:
- half_match = re.compile(r'(' + re.escape(SURNAME) + r')\W+([0-9]+)\W+([\w.-]+@[\w.-]+)')
- search_user_half = re.search(half_match,str(result_sql_mail))
- if search_user_half is not None:
- data_user.append(search_user_half.group(3))
- subscriber_table.append(data_user)
- #############################################################################
- #############################CONNECT TO BD FOR UPDATE########################
- mariadb_connection_phoneDB_update = mariadb.connect(host='', port='', user='',
- password='',
- database='', charset='utf8')
- #############################################################################
- ################################WORK WITH SUB TABLE##########################
- for users in subscriber_table:
- subscriber= users[0]+' '+users[1]+' '+users[2]
- MAIL = users[-1]
- cursor_update = mariadb_connection_phoneDB_update.cursor()
- sql_command_phone_update_mail = "UPDATE ph_postmeta pm,ph_posts p,ph_terms pt,ph_term_relationships ptr SET meta_value=%s " \
- "WHERE p.ID=pm.post_ID AND pt.term_id=ptr.term_taxonomy_id AND ptr.object_id=p.ID AND pm.meta_key='e-mail' AND p.post_title LIKE %s"
- cursor_update.execute(sql_command_phone_update_mail,(MAIL, '%' + subscriber+ '%'))
- #############################################################################
- #####################CONFIM AND CONNECT CLOSE################################
- mariadb_connection_phoneDB_update.commit()
- mariadb_connection_phoneDB.close()
- #############################################################################
- print('job done')
- table_mail_acc()
Add Comment
Please, Sign In to add comment