51Testing
怬
µçÄÔ°æ

ÎÒÓÃPython´¦Àí3Íò¶àÌõÊý¾Ý£¬Ö»Òª¼¸ÃëÖÓ¡­¡­

2020-2-06 13:34×÷ÕߣºØýÃûÀ´Ô´£ºPython±à³Ì

¡¡¡¡Ó¦Óó¡¾°£º¹¤×÷Öо­³£Óöµ½´óÁ¿µÄÊý¾ÝÐèÒªÕûºÏ¡¢È¥ÖØ¡¢°´ÕÕÌض¨¸ñʽµ¼³öµÈÇé¿ö¡£Èç¹ûÓà Excel ²Ù×÷£¬²»½ö·Ñʱ·ÑÁ¦£¬»¹²»×¼È·£¬ÓÐôÓиü¸ßЧµÄ½â¾ö·½°¸ÄØ£¿
¡¡¡¡±¾ÎÄÒÔ17¸ö txt Îı¾£¬3Íò¶àÌõÊý¾ÝΪÀý£¬Ê¹Óà Python Á¬½Ó MySQL Êý¾Ý¿â£¬ÊµÏÖ¿ìËÙ²Ù×÷¡£
¡¡¡¡±ðÈ˼Ӱà¸ÉµÄ»î£¬ÎÒµÄ Python СÖúÊÖ¼¸ÃëÖӾ͸㶨ÁË£¡
¡¡¡¡±¾ÎÄÖ÷Òª°üÀ¨ÒÔÏÂÈý·½ÃæÄÚÈÝ£º
¡¡¡¡¡¤ Êý¾ÝдÈë
¡¡¡¡¡¤ Êý¾ÝÈ¥ÖØ
¡¡¡¡¡¤ Êý¾Ýµ¼³ö
¡¡¡¡½«Êý¾ÝдÈë MySQL Êý¾Ý¿â
¡¡¡¡ÏÂͼËùʾÎļþÊDZ¾ÎĵÄÊý¾ÝÔ´£º
¡¡¡¡ÎÒÃǵÄÉèÏëÊÇ£º±àдһ¸öС³ÌÐò£¬ÈÓÔÚÕâ¸öÎļþ¼ÐÀ˫»÷ºó¾Í¿ÉÒÔ×Ô¶¯¶Áȡÿ¸ö txt ÎĵµÖеÄÊý¾Ý£¬²¢Ð´ÈëÊý¾Ý¿â¡£
¡¡¡¡´úÂëÈçÏ£º
import pymysql  
import os  
conn = pymysql.connect(host='localhost', user='root', password='123456', db='qq', charset='utf8')  
cur = conn.cursor()  
cur.execute("CREATE TABLE qq ( id int(5) NOT NULL auto_increment, qq varchar(20)NOT NULL, PRIMARY KEY  (id));")  
conn.commit()  
path = os.getcwd()  
files = os.listdir(path)  
i = 0  
for file in files:  
    f = open(file,'r',encoding = 'UTF-8')  
    next(f)  
    for line in f:  
        i += 1  
        #print(line)  
        sql = "insert into qq(qq) values(%s);"  
        cur.execute(sql,line)  
        print("²åÈëµÚ", i, "ÌõÊý¾Ý£¡")  
        conn.commit()  
    f.close()  
cur.close()  
conn.close() 
¡¡¡¡ÔËÐÐЧ¹û£º
¡¡¡¡Öصã´úÂë½âÊÍ£º
¡¡¡¡Õâ¶Î´úÂëÓõ½ÁË pymysql ºÍ os Á½¸ö¿â¡£
¡¡¡¡¡¤ pymysql£ºÓÃÀ´²Ù×÷ MySQL Êý¾Ý¿â£»
¡¡¡¡¡¤ os£ºÓÃÀ´±éÀúËùÔÚÎļþ¼ÐϵÄËùÓÐÎļþ¡£
¡¡¡¡ÏÖ½«Ö÷Òª´úÂë½âÊÍÈçÏ£º
¡¡¡¡1¡¢±éÀúÈÎÒâÎļþ¼ÐÏÂËùÓÐÎļþÃû³Æ
¡¡¡¡³ÌÐòдºÃºó£¬Ê¹Óà pyinstaller ´ò°ü³É exe ³ÌÐò£¬²¢·ÅÔÚÒª²Ù×÷µÄÎļþ¼ÐÏÂÃæ¡£
¡¡¡¡Í¨¹ý path = os.getcwd()ÃüÁ»ñÈ¡¸Ã exe ÎļþËùÔÚĿ¼¡£
¡¡¡¡Í¨¹ý files = os.listdir(path)ÃüÁ»ñÈ¡ exe ÎļþËùÔÚĿ¼ÏµÄËùÓÐÎļþÃû³Æ£¬²¢´æÈë files ÁбíÖС£
¡¡¡¡ÕâÑùÎÒÃǾͻñµÃÁËËùÓÐµÄ txt ÎļþÃû³Æ£¬Äã¿ÉÒÔÈÎÒâÃüÃûÄãµÄ txt ÎļþÃû£¬³ÌÐò¶¼ÄܶÁ³öÀ´¡£
¡¡¡¡2¡¢½«Êý¾ÝдÈëÊý¾Ý¿â
¡¡¡¡£¨1£©Á¬½ÓÊý¾Ý¿â£¬²¢ÔÚÊý¾Ý¿âÖд´½¨Ð±í
¡¡¡¡A. Á¬½Óµ½ÎÒµÄ qq Êý¾Ý¿â
¡¡¡¡conn = pymysql.connect(host='localhost', user='root', password='123456', db='qq', charset='utf8')
¡¡¡¡B. ´´½¨Ð±í qq
¡¡¡¡ÔÚ qq Êý¾Ý¿âÖд´½¨ÐÂ±í£¬±íÃû³ÆΪ qq £¬°üº¬ 2 ¸ö×ֶΣºid ×Ö¶ÎΪÖ÷¼ü¡¢×Ô¶¯µÝÔö£»qq ×Ö¶ÎΪ×Ö·ûÐÍ£¬ÓÃÓÚ´æ´¢Êý¾Ý¡£
¡¡¡¡cur.execute("CREATE TABLE qq ( id int(5) NOT NULL auto_increment, qq varchar(20)NOT NULL, PRIMARY KEY (id))")
¡¡¡¡£¨2£©½«Êý¾ÝдÈëÊý¾Ý¿â
¡¡¡¡ÕâÀïʹÓÃÁËÁ½²ãÑ­»·£º
for file in files:  
    f = open(file,'r',encoding = 'UTF-8')  
    next(f)  
    for line in f:  
        i += 1  
        #print(line)  
        sql = "insert into qq(qq) values(%s);"  
        cur.execute(sql,line)  
        print("²åÈëµÚ", i, "ÌõÊý¾Ý£¡")  
        conn.commit()  
    f.close() 
¡¡¡¡µÚÒ»²ãÑ­»·ÊÇÓÃÀ´ÒÀ´Î´ò¿ªÉÏÊö 17 ¸ö txt Îļþ¡£
¡¡¡¡µÚ¶þ²ãÑ­»·ÊÇÒÀ´Î¶Áȡÿ¸ö txt ÎļþµÄÿһÐУ¬²¢½«¸ÄÐÐÊý¾Ý²åÈëÊý¾Ý¿â±í qq µÄ qq×ֶΡ£
¡¡¡¡ÖÁ´Ë¾ÍÍê³ÉÁËÊý¾ÝµÄµ¼È룬×ܹ²32073ÌõÊý¾Ý¡£
¡¡¡¡Êý¾ÝÇåÏ´
¡¡¡¡ÕâÀïÒÔÈ¥³ýÖظ´ÖµÎªÀý£¬¼òµ¥½éÉÜÒ»ÏÂÊý¾ÝÇåÏ´¡£
¡¡¡¡1¡¢´´½¨Ò»¸öÐÂ±í£¬ÓÃÀ´´æ´¢ÇåÏ´ºóµÄÊý¾Ý
¡¡¡¡¿ÉÒÔÔÚ cmd ´°¿Úϵǽ MySQL£¬´ò¿ª qq Êý¾Ý¿â£¬Ö´ÐÐÏÂÁвÙ×÷£º
¡¡¡¡CREATE TABLE qq_dist ( id int(5) NOT NULL auto_increment, qq varchar(20)NOT NULL, PRIMARY KEY (id));
¡¡¡¡ÕâÑù¾Í´´½¨ÁËбí qq_dist ,ÓÃÀ´´æ´¢ÇåÏ´ºóµÄÊý¾Ý£¬±ãÓÚºóÆÚµ÷Óá£
¡¡¡¡2¡¢ÇåÏ´Êý¾Ý
¡¡¡¡µÇ½ MySQL ºó£¬Ö´ÐÐÏÂÁвÙ×÷£º
¡¡¡¡insert into qq_dis(qq) select distinct qq from qq;
¡¡¡¡½«´Ó qq ±íÖвéÕÒ³öµÄ²»Öظ´µÄ qq ×Ö¶ÎÄÚÈÝ£¬²åÈëµ½ qq_dist ±íÖÐµÄ qq ×ֶΡ£
¡¡¡¡½«Êý¾Ý°´ÕÕÌض¨¸ñʽµ¼³ö
¡¡¡¡°¸Àý£º½«ÇåÏ´ºóµÄÊý¾ÝµÄµÚ101-200Ðе¼³öµ½Ð嵀 txt Îı¾ÖС£
¡¡¡¡´úÂëÈçÏ£º
import pymysql  
conn = pymysql.connect(host='localhost', user='root', password='123456', db='wxid', charset='utf8')  
print("дÈëÖУ¬ÇëµÈ´ý¡­¡­")  
cur = conn.cursor()  
sql = "select wxid from wd_dis limit 100,100;"  
cur.execute(sql)  
conn.commit()  
alldata = cur.fetchall()  
f = open('data101-200.txt','a')  
i = 0  
for data in alldata:  
    i += 1  
    f.write(data[0])  
    f.flush()  
f.close  
cur.close()  
conn.close()  
print("дÈëÍê³É,¹²Ð´Èë{}ÌõÊý¾Ý£¡".format(i)) 
¡¡¡¡Öصã´úÂë½âÊÍ£º
¡¡¡¡1¡¢ limit
¡¡¡¡MySQL ÖÐ limit m,n º¯ÊýµÄº¬ÒåÊÇ£º´ÓµÚ m+1 ÐпªÊ¼¶ÁÈ¡ n ÐС£
¡¡¡¡ËùÒÔ£¬±¾°¸ÀýÖжÁÈ¡µÚ101-200ÐУ¬¾ÍÊÇ limit 100,100
¡¡¡¡2¡¢flush()
¡¡¡¡flush()º¯ÊýÒ»¶¨Òª¼ÓÉÏ£¬Ëü¿ÉÒÔ½«»º³åÇøµÄÊý¾ÝдÈëÎļþÖС£·ñÔò¾Í»á³öÏÖÉú³ÉµÄ txt ÎĵµÎª¿Õ°×µÄ´íÎó¡£

      ±¾ÎÄÄÚÈݲ»ÓÃÓÚÉÌҵĿµÄ£¬ÈçÉ漰֪ʶ²úȨÎÊÌ⣬ÇëȨÀûÈËÁªÏµ²©Îª·åС±à(021-64471599-8017)£¬ÎÒÃǽ«Á¢¼´´¦Àí¡£
Èí¼þ¿ª·¢ Python
µ±Ç°Ã»ÓÐÆÀÂÛµã»÷·¢±íÆÀÂÛ

Ïà¹ØÔĶÁ