5261
редагування
Admin (обговорення | внесок) (Створена сторінка: local p = {} function p.FetchData(frame) local categoryName = "Учасники_спільноти_MCC" -- category name as per your URL local titles = mw.site.stats.getPagesInCategory(categoryName, "pages") -- Start the wikitable local output = '{| class="wikitable"\n' output = output .. '! Nickname !! Prize Pool !! Date Added !! Recruiter\n' -- Process each page in the category for _, pageTitle in ipairs(titles) do...) |
Admin (обговорення | внесок) Немає опису редагування |
||
| (Не показано одну проміжну версію цього користувача) | |||
| Рядок 2: | Рядок 2: | ||
function p.FetchData(frame) | function p.FetchData(frame) | ||
-- List of player pages to process | |||
local | local players = { | ||
"Індиго", "Адамант", "Алоха", "Аріель", "Берлін", "Бетмен", "Браун", | |||
"ВВ", "Дантес", "Демон", "Джордж", "Доктор Хаус", "Доктор Ямато", | |||
"Емесай", "ЕХС", "Кексік", "Керміт", "Клайд", "Клей", "Комар", | |||
"Лівінгстон", "Лемур", "Містер Тен", "Малена", "Мальвінка", "Маска", | |||
"Мері", "Механік", "Ніколетта", "Оттерія", "Расм", "Сімон", "Справа", | |||
"Тайєр", "Тян", "Фавер", "Фаза", "Фейт", "Хантер", "Хоррорчік", "Шостік" | |||
} | |||
-- Start the wikitable | -- Start the wikitable | ||
| Рядок 9: | Рядок 16: | ||
output = output .. '! Nickname !! Prize Pool !! Date Added !! Recruiter\n' | output = output .. '! Nickname !! Prize Pool !! Date Added !! Recruiter\n' | ||
-- Process each page | -- Process each player page | ||
for _, | for _, playerName in ipairs(players) do | ||
local | local page = mw.title.new(playerName) | ||
local content = page:getContent() | |||
-- Extract data using patterns (assume your template fields are consistent) | |||
local nickname = content:match("| nickname = ([^\n]+)") | |||
local prizePool = content:match("| prize_pool = ([^\n]+)") | |||
local dateAdded = content:match("| date_added = ([^\n]+)") | |||
local recruiterLink = content:match("| recruiter = %[%[([^|%]]+)") | |||
local recruiter = recruiterLink and mw.title.new(recruiterLink):getPrefixedText() or 'N/A' | |||
-- Append to the table | -- Append to the table | ||
output = output .. '|-\n' | output = output .. '|-\n' | ||
output = output .. string.format('| %s || %s || %s || %s\n', nickname or | output = output .. string.format('| %s || %s || %s || %s\n', nickname or playerName, prizePool or 'N/A', dateAdded or 'N/A', recruiter) | ||
end | end | ||
-- Close the wikitable | -- Close the wikitable | ||
output = output .. '|}' | output = output .. '|}' | ||
return output | return output | ||
end | end | ||
return p | return p | ||