Explorar o código

인터위키 추가

2DU %!s(int64=9) %!d(string=hai) anos
pai
achega
e2c1a9d2b3
Modificáronse 2 ficheiros con 24 adicións e 0 borrados
  1. 20 0
      app.py
  2. 4 0
      inter.json

+ 20 - 0
app.py

@@ -11,6 +11,9 @@ import bcrypt
 json_data = open('set.json').read()
 data = json.loads(json_data)
 
+inter = open('inter.json').read()
+interwiki = json.loads(inter)
+
 conn = pymysql.connect(host = data['host'], user = data['user'], password = data['pw'], db = data['db'], charset = 'utf8')
 curs = conn.cursor(pymysql.cursors.DictCursor)
 
@@ -134,6 +137,23 @@ def namumark(title, data):
         else:
             break
             
+    while True:
+        m = re.search("\[\[(?:((?:(?!:|http(?:s):\/\/).)*)\:((?:(?!\]\]|\|).)*))(\|(?:(?:(?!\]\]).)*))?\]\]", data)
+        if(m):
+            results = m.groups()
+            try:
+                if(results[2]):
+                    data = re.sub("\[\[(?:((?:(?!:|http(?:s):\/\/).)*)\:((?:(?!\]\]|\|).)*))(\|(?:(?:(?!\]\]).)*))?\]\]", "[[" + interwiki[results[0]] + results[1] + results[2] + "]]", data, 1)
+                else:
+                    data = re.sub("\[\[(?:((?:(?!:|http(?:s):\/\/).)*)\:((?:(?!\]\]|\|).)*))(\|(?:(?:(?!\]\]).)*))?\]\]", "[[" + interwiki[results[0]] + results[1] + "]]", data, 1)
+            except:
+                if(results[2]):
+                    data = re.sub("\[\[(?:((?:(?!:|http(?:s):\/\/).)*)\:((?:(?!\]\]|\|).)*))(\|(?:(?:(?!\]\]).)*))?\]\]", "[[" + results[1] + results[2] + "]]", data, 1)
+                else:
+                    data = re.sub("\[\[(?:((?:(?!:|http(?:s):\/\/).)*)\:((?:(?!\]\]|\|).)*))(\|(?:(?:(?!\]\]).)*))?\]\]", "[[" + results[1] + "]]", data, 1)
+        else:
+            break
+            
     while True:
         m = re.search("\[\[(((?!\]\]).)*)\]\]", data)
         if(m):

+ 4 - 0
inter.json

@@ -0,0 +1,4 @@
+{
+	"¸ŽşŁ" : "http://enha.xyz/w/",
+	"łŞšŤ" : "https://namu.wiki/w/"
+}