Permanently protected module

모듈:유튜브 구독자

Module

POINT_IN_TIME_PID = "P585" YT_CHAN_ID_PID= "P2397" SUB_COUNT_PID = "P8687"  현지의 p = {}   https://en.wikipedia.org/wiki/Module:Wd 에서 가져온 기능. 구문 분석 날짜(dateStr, 정확)  정확 = 정확 또는 "d"   현지의 i, j, 색인을 달다, 프트르  현지의 부품. = {영의, 영의, 영의}   한다면 dateStr == 영의 그리고나서   돌아가다 부품.[1], 부품.[2], 부품.[3]  년, 월, 일  끝.   스낙 값의 경우 'T', '/Julian'이(가) 연결된 출력의 경우 '/'  i, j = dateStr:찾아내다("[T/]")   한다면 i 그리고나서   dateStr = dateStr:후보선수(1, i-1)  끝.   현지의 부터 = 1   한다면 dateStr:후보선수(1,1) == "-" 그리고나서   이것은 음수입니다. 더 멀리 내다보세요.   부터 = 2  끝.   색인을 달다 = 1  프트르 = 1   i, j = dateStr:찾아내다("-", 부터)   한다면 i 그리고나서   연도   부품.[색인을 달다] = 수에 달하여(mw.ustring.gsub(dateStr:후보선수(프트르, i-1), "^%+(.+)$", "%1"), 10)  '+' 기호를 제거합니다(오류를 방지하기 위해 기본 10을 제공해야 함).    한다면 부품.[색인을 달다] == -0 그리고나서    부품.[색인을 달다] = 수에 달하여("0")  어떤 이유에서인지 'parts[index] = 0'은 실제로 '-0'을 저장할 수 있으므로 대신 문자열에서 구문 분석합니다.   끝.    한다면 정확 == "y" 그리고나서    끝났습니다    돌아가다 부품.[1], 부품.[2], 부품.[3]  년, 월, 일   끝.    색인을 달다 = 색인을 달다 + 1   프트르 = i + 1    i, j = dateStr:찾아내다("-", 프트르)    한다면 i 그리고나서    월    부품.[색인을 달다] = 수에 달하여(dateStr:후보선수(프트르, i-1), 10)     한다면 정확 == "m" 그리고나서     끝났습니다     돌아가다 부품.[1], 부품.[2], 부품.[3]  년, 월, 일    끝.     색인을 달다 = 색인을 달다 + 1    프트르 = i + 1   끝.  끝.   한다면 dateStr:후보선수(프트르) ~= "" 그리고나서   월이 있는 경우 일, 년이 있는 경우 월 또는 년   부품.[색인을 달다] = 수에 달하여(dateStr:후보선수(프트르), 10)  끝.   돌아가다 부품.[1], 부품.[2], 부품.[3]  년, 월, 일 끝.  https://en.wikipedia.org/wiki/Module:Wd 에서 가져온 현지의 기능. 날짜이전 날짜(가일층의, 엠의, 디, 타고, bM, bD)  한다면 가일층의 == 영의 또는 타고 == 영의 그리고나서   돌아가다 영의  끝.  엠의 = 엠의 또는 1  디 = 디 또는 1  bM = bM 또는 1  bD = bD 또는 1   한다면 가일층의 < 타고 그리고나서   돌아가다 진실의  그렇지 않으면 가일층의 > 타고 그리고나서   돌아가다 거짓의  그렇지 않으면 엠의 < bM 그리고나서   돌아가다 진실의  그렇지 않으면 엠의 > bM 그리고나서   돌아가다 거짓의  그렇지 않으면 디 < bD 그리고나서   돌아가다 진실의  끝.   돌아가다 거짓의 끝.  기능. 클레임 날짜 가져오기(주장하다)  한다면 주장하다['예선전'] 그리고. 주장하다['예선전'][POINT_IN_TIME_PID] 그리고나서    현지의 지정 시점 = 주장하다['예선전'][POINT_IN_TIME_PID]   한다면 #지정 시점 ~= 1 그리고나서    우리가 받아들이는 것에 있어서 보수적입니다.    오류("0 또는 다중 시점(P85) 한정자가 있는 문을 발견했습니다.각 문에 정확히 하나가 있도록 지정 시점 정보를 추가하거나 제거하십시오.")   끝.   현지의 지정 시점 = 지정 시점[1]   한다면 지정 시점 그리고. 지정 시점['데이터 값'] 그리고. 지정 시점['데이터 값']['가치'] 그리고. 지정 시점['데이터 값']['가치']['시간'] 그리고나서    돌아가다 구문 분석 날짜(지정 시점['데이터 값']['가치']['시간'])   끝.  끝.  돌아가다 영의 끝.  주어진 진술 목록에 대해 일치하는 수량을 가진 최신 진술 찾기 기능. 최신 일치 문(진술들, 양질의, 대상 QualValue)  현지의 최신 정보 = 영의  현지의 최신 정보연 = 영의  현지의 최신 스테이트먼트 모 = 영의  현지의 최신 국경일 = 영의     위해서 k, v 에 쌍들(진술들) 하다, 하다, 하다, 하다, 하다, 하다, 하다, 하다, 나다      한다면 v['순위'] ~= "사용되지 않음" 그리고. v['예선전'] 그리고. v['예선전'][양질의] 그리고나서       현지의 질 = v['예선전'][양질의]       문에 한정자 인스턴스가 하나만 있어야 합니다.       한다면 #질 == 1 그리고나서        현지의 양질의 = 질[1]        한다면 양질의['데이터 값'] 그리고. 양질의['데이터 값']['가치'] 그리고나서         현지의 qual Value = 양질의['데이터 값']['가치']         한다면 qual Value == 대상 QualValue 그리고나서          현지의 target Yr, 대상Mo, 대상일 = 클레임 날짜 가져오기(v)          한다면 target Yr 그리고나서           현지의 연상의 = 날짜이전 날짜(target Yr, 대상Mo, 대상일, 최신 정보연, 최신 스테이트먼트 모, 최신 국경일)           한다면 연상의 == 영의 또는 것은 아니다. 연상의 그리고나서            최신 정보연, 최신 스테이트먼트 모, 최신 국경일 = target Yr, 대상Mo, 대상일            최신 정보 = v           끝.          끝.         끝.        끝.       끝.      끝.     끝.  돌아가다 최신 정보 끝.  지정된 속성 및 한정자 쌍에 대해 일치하는 최신 문을 반환합니다. 기능. 최신 일치(e, 버팀목, 양질의, 대상 QualValue)  우선 가장 좋은 진술을 확인합니다.  현지의 진술들 = e:베스트 문 가져오기(버팀목)  현지의 최신 정보 = 최신 일치 문(진술들, 양질의, 대상 QualValue)  한다면 최신 정보 그리고나서   돌아가다 최신 정보  끝.  아직까지는 아무 것도 없다면 모든 진술로 다시 시도합니다.  진술들 = e:모든 문 가져오기(버팀목)  최신 정보 = 최신 일치 문(진술들, 양질의, 대상 QualValue)  한다면 최신 정보 그리고나서   돌아가다 최신 정보  끝.  돌아가다 영의 끝.  기능. 엔티티 가져오기 ( 틀 )  현지의 큐드 = 영의  한다면 틀.논병아리 그리고나서   큐드 = 틀.논병아리["qid"]  끝.  한다면 것은 아니다. 큐드 그리고나서   큐드 = mw.위키베이스.현재 페이지의 엔티티 ID 가져오기()  끝.  한다면 것은 아니다. 큐드 그리고나서   현지의 e = 영의   돌아가다 e  끝.  현지의 e = mw.위키베이스.엔티티 가져오기(큐드)  주장하다(e, "해당 항목을 찾을 수 없습니다." .. 큐드)  돌아가다 e 끝.  우리가 서브카운트를 받을 채널 ID를 찾습니다. 기능. BestYtChanId 가져오기(e)   현지의 chanIds = e:베스트 문 가져오기(YT_CHAN_ID_PID)  한다면 #chanIds == 1 그리고나서   현지의 찬 = chanIds[1]   한다면 찬 그리고. 찬["메인스낵"] 그리고. 찬["메인스낵"]["데이터 값"] 그리고. 찬["메인스낵"]["데이터 값"]["값"] 그리고나서    돌아가다 찬["메인스낵"]["데이터 값"]["값"]   끝.  끝.  돌아가다 영의 끝.  기능. 반환 오류(틀, eMessage)  돌아가다 틀:확장템플릿{ 제목 = '오류', 논병아리 = { eMessage } } .. "[카테고리:YouTube Subscribers 모듈 오류가 있는 페이지]" 끝.  현재 YT 가입자 수의 날짜 기능. p.날짜.( 틀 )  현지의 e = 엔티티 가져오기(틀)  주장하다(e, "페이지에 대한 qid를 찾을 수 없습니다.이 기사에 대한 Wikidata 항목을 만드십시오.")  현지의 chanId = BestYtChanId 가져오기(e)  주장하다(chanId, "이 항목에 가장 적합한 유튜브 채널 ID를 찾을 수 없습니다.유튜브 채널ID 추가 또는 선호할 채널ID 1개 순위 설정")  현지의 s = 최신 일치(e, SUB_COUNT_PID, YT_CHAN_ID_PID, chanId)  한다면 s 그리고나서   현지의 yt_year, yt_month, yt_day = 클레임 날짜 가져오기(s)   한다면 것은 아니다. yt_year 그리고나서    돌아가다 영의   끝.   현지의 dateString = yt_year .. " "   구성 YYYYmm dd 날짜 문자열   한다면 yt_month 그리고. yt_month ~= 0 그리고나서    dateString = dateString .. yt_month .. " "    월일 자르기    --yf yt_day 및 yt_day ~= 0인 경우    dateString = dateString ..yt_day    --끝   끝.   돌아가다 틀:확장템플릿{제목="형식 지정 날짜", 논병아리 = {yt_year, yt_month, yd_day}}  끝.  오류("YouTube 가입자 정보에 대한 날짜를 찾을 수 없습니다.P585 및 P2397에 대한 좋은 값을 가진 소셜 미디어 팔로워 성명(P8687)이 있습니까?") 끝.  기능. p.dateNice( 틀 )  현지의 상황, obj = pcall(p.날짜., 틀)  한다면 상황 그리고나서   돌아가다 obj  또 다른    돌아가다 반환 오류(틀, obj)  끝. 끝.  최신 구독자 수 기능. p.하위 카운트( 틀 )  현지의 하위 카운트 = 영의  현지의 e = 엔티티 가져오기(틀)  한다면 것은 아니다. e 그리고나서   하위 카운트 = -424      돌아가다 수에 달하여(하위 카운트)  끝.  현지의 chanId = BestYtChanId 가져오기(e)  한다면 chanId 그리고나서   현지의 s = 최신 일치(e, SUB_COUNT_PID, YT_CHAN_ID_PID, chanId)   한다면 s 그리고. s["메인스낵"] 그리고. s['메인스낵']["데이터 값"] 그리고. s['메인스낵']["데이터 값"]["값"] 그리고. s['메인스낵']["데이터 값"]['가치']['금액'] 그리고나서    하위 카운트 = s['메인스낵']["데이터 값"]['가치']['금액']   끝.  또 다른    하위 카운트 = -404  끝.     한다면 하위 카운트 그리고나서      돌아가다 수에 달하여(하위 카운트)     또 다른   하위 카운트 = -412      돌아가다 수에 달하여(하위 카운트)     끝. 끝.  기능. p.니스 하위 백작( 틀 )  현지의 상황, obj = pcall(p.하위 카운트, 틀)  한다면 상황 그리고나서   한다면 obj >= 0 그리고나서    돌아가다 틀:확장템플릿{제목="형식 가격", 논병아리 = {obj}}   또 다른    돌아가다 obj   끝.  또 다른    돌아가다 반환 오류(틀, obj)  끝. 끝.  돌아가다 p