-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathorphaned_talk.py
executable file
·35 lines (30 loc) · 1.88 KB
/
orphaned_talk.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
import toolforge
import pywikibot as pw
import helpers
hywiki = pw.Site('hy', 'wikipedia')
query = '''SELECT p1.page_title, p1.page_namespace
FROM page AS p1
WHERE p1.page_title NOT LIKE"%/%"
AND p1.page_namespace IN (1, 5, 7, 9, 11, 13, 15, 101, 829)
AND NOT EXISTS (SELECT 1
FROM page AS p2
WHERE p2.page_namespace = p1.page_namespace - 1
AND p1.page_title = p2.page_title)
AND p1.page_id NOT IN (SELECT cl_from FROM categorylinks WHERE cl_to = 'Որբ_քննարկման_էջ');'''
conn = toolforge.connect('hywiki')
with conn.cursor() as cur:
cur.execute(query)
results = cur.fetchall()
text = ''
nsMap = {0: "", 1: "Քննարկում:", 2: "Մասնակից:", 3: "Մասնակցի քննարկում:", 4: "Վիքիպեդիա:",
5: "Վիքիպեդիայի քննարկում:", 6: "Պատկեր:", 7: "Պատկերի քննարկում:", 8: "MediaWiki:",
9: "MediaWiki քննարկում:", 10: "Կաղապար:", 11: "Կաղապարի քննարկում:", 12: "Օգնություն:",
13: "Օգնության քննարկում:", 14: "Կատեգորիա:", 15: "Կատեգորիայի քննարկում:", 100: "Պորտալ:",
101: "Պորտալի քննարկում:", 828: "Մոդուլ:", 829: "Մոդուլի քննարկում:", 2300: "Gadget:",
2301: "Gadget talk:", 2302: "Gadget definition:", 2303: "Gadget definition talk:", -2: "Մեդիա:",
-1: "Սպասարկող:"}
for r in results:
text += f'\n#[[:{nsMap[r[1]]+helpers.get_cell_txt(r[0])}]] - [[:{nsMap[r[1]-1]+helpers.get_cell_txt(r[0])}]]'
p = pw.Page(hywiki, 'Վիքիպեդիա:Ցանկեր/կասկածելի քննարկման էջեր')
p.text = text
p.save(summary='թարմացում', botflag=False)