Eztabaida:Jack Nicholson

Orriaren edukia ez da onartzen beste hizkuntza batzuetan.
Wikipedia, Entziklopedia askea

Filmen izenburua gure inguruko hizkuntzatan?[aldatu iturburu kodea]

Sortu dut Python programa bat aktore baten filmen izenburua gure inguruko hizkuntzatan azaltzeko (en, es, fr, eu, ca. gl). Python programak wikikodea sortzen du eta bukaeran jarri dut, ikus ezazue emaitza artikuluko azken atalean. Gehiegi konplikatzen du artikuluaren edukia? Merezi du hainbat aktorerekin egitea?Hizkuntza gutxiagotan jarri beharko litzateke?

Hau da Python programaren kodea. Erabil dezakezue PAWS tresnarekin interneten bidez (https://hub-paws.wmcloud.org/), baita beste aktore batekin (ordeztu "Q39792' identifikadorea)

# -*- coding: utf-8  -*-
import pywikibot
from pywikibot import pagegenerators
"""
Iterate over a query given in a string using page generators.
"""
QUERY = """
#
SELECT ?item WHERE 
{
  ?item (wdt:P31/(wdt:P279*)) wd:Q11424;
   wdt:P161 wd:Q39792.
}
LIMIT 200
"""

site = pywikibot.Site("wikidata", "wikidata")
repo = site.data_repository()

generator = pagegenerators.PreloadingEntityGenerator(pagegenerators.WikidataSPARQLPageGenerator(QUERY,site=repo))

for item in generator:
    #print (item)
    h1 = item.get()
    #print(h1)
    #print (h1['claims'])
    if 'en' in item.labels:
        print('* [['+item.labels['en']+']]')
    if 'es' in item.labels:
        if item.labels['es'] != item.labels['en']:
                print('** {{Lang-es|', item.labels['es'],'}}')
    if 'fr' in item.labels:
        if item.labels['fr'] != item.labels['en']:
                print('** {{Lang-fr|', item.labels['fr'],'}}')
    if 'eu' in item.labels:
        if item.labels['eu'] != item.labels['en']:
                print('** {{Lang-eu|', item.labels['eu'],'}}')
    if 'ca' in item.labels:
        if item.labels['ca'] != item.labels['en']:
                print('** {{Lang-ca|', item.labels['ca'],'}}')

    if 'gl' in item.labels:
        if item.labels['gl'] != item.labels['en']:
                print('** {{Lang-gl|', item.labels['gl'],'}}'
    #print('-------')

# ADIBIDEZ, 
# programan azaltzen den 'Q3979' kodea Wikidatan 'Jack Nicholson' da.
# eta programak sortzen duena honela hasten da:

#* [[The Evening Star]]
#** {{Lang-es| La fuerza del cariño, la historia continúa }}
#** {{Lang-fr| Étoile du soir }}
#** {{Lang-ca| La força de la tendresa. La història continua }}
#* [[One Flew Over the Cuckoo's Nest]]
#** {{Lang-es| Alguien voló sobre el nido del cuco }}
#** {{Lang-fr| Vol au-dessus d'un nid de coucou }}
#** {{Lang-ca| Algú va volar sobre el niu del cucut }}
#** {{Lang-gl| Alguén voou sobre o niño do cuco }}
#...

Ksarasola (eztabaida) 01:39, 12 maiatza 2024 (CEST)[Erantzun]

Taulak hain errepikakorrak ez izateko taula bakar batean bildu ditut filmen zuzendaria eta beste hizkuntza batzuetan hartu duten izenburuak, Urtearen arabera ordenatu daitezke filmak, baita izenburuaren arabera eta zuzendariaren arabera ere.
# -*- coding: utf-8  -*-
import pywikibot
import datetime
from pywikibot import pagegenerators
"""
Iterate over a query given in a string using page generators.
"""
QUERY = """
#
SELECT ?item WHERE {
  ?item (wdt:P31/(wdt:P279*)) wd:Q11424;
    wdt:P161 wd:Q39792.

}
LIMIT 500
"""

site = pywikibot.Site("wikidata", "wikidata")
repo = site.data_repository()

generator = pagegenerators.PreloadingEntityGenerator(pagegenerators.WikidataSPARQLPageGenerator(QUERY,site=repo))

print ("""{| class="wikitable sortable"
|-
! Urtea
! Filma
! Zuzendaria
! Hizkuntzak """)
for item in generator:

    print ("|-")
    #print (item)
    h1 = item.get()
    #print(h1)
    #print (h1['claims'])

    if 'P577' in item.claims: # urtea
        date = item.claims['P577'][0].getTarget()
        print ("| ", date.year)
    
    
    if 'en' in item.labels:
        print("| [["+item.labels['en']+"]]")
    
    if 'P57' in item.claims: # zuzendaria
        Zuzendaria = item.claims['P57'][0].getTarget()
        print("|[[", Zuzendaria.labels['en'],"]]")
    else:
        print("| ")

    print("|<small>")
    if 'es' in item.labels:
        if item.labels['es'] != item.labels['en']:
                print('{{Lang-es|', item.labels['es'],'}}')
    if 'fr' in item.labels:
        if item.labels['fr'] != item.labels['en']:
                print('{{Lang-fr|', item.labels['fr'],'}}')
    if 'eu' in item.labels:
        if item.labels['eu'] != item.labels['en']:
                print('{{Lang-eu|', item.labels['eu'],'}}')
    if 'ca' in item.labels:
        if item.labels['ca'] != item.labels['en']:
                print('{{Lang-ca|', item.labels['ca'],'}}')
    if 'gl' in item.labels:
        if item.labels['gl'] != item.labels['en']:
                print('{{Lang-gl|', item.labels['gl'],'}}')
    print("</small>")

print("|}")

Ksarasola (eztabaida) 20:47, 13 maiatza 2024 (CEST)[Erantzun]