모듈:유튜브 구독자
Module| 이 모듈은 베타 등급으로 널리 사용될 준비가 되었습니다.아직 새 제품이므로 결과가 예상대로 나오도록 주의하여 사용해야 합니다. |
이 모듈은 Wikidata 엔티티에서 YouTube 채널의 구독자 수를 가져옵니다.
사용.
{{#invoke:YouTubeSubscribers subCount qid=Wikidata entity ID (optional)}}
{{#invoke:YouTubeSubscribers subCountNice qid=Wikidata entity ID (optional)}}구독자 수 형식 지정
{{#invoke:YouTubeSubscribers date qid=Wikidata entity ID (optional)}}
{{#invoke:YouTubeSubscribers dateNice qid=Wikidata entity ID (optional)}}
데이터 검색 문제 코드
- -404 – 이 항목에 가장 적합한 유튜브 채널 ID를 찾을 수 없습니다.YouTube 채널 ID를 추가하거나 선호할 채널 ID의 순위를 설정합니다.
- -412 – 연관된 YouTube 채널 ID를 찾았지만 소셜 미디어 팔로워에 대한 최신 값을 찾을 수 없습니다(즉, P585 및 P2397 인증을 받은 P8687).
- -424 – 페이지에 대한 qid를 찾을 수 없습니다.이 기사에 대한 Wikidata 항목을 만드십시오.
오류 추적 범주
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