当前位置: 首页>>代码示例>>Python>>正文


Python pywikibot.FilePage方法代码示例

本文整理汇总了Python中pywikibot.FilePage方法的典型用法代码示例。如果您正苦于以下问题:Python pywikibot.FilePage方法的具体用法?Python pywikibot.FilePage怎么用?Python pywikibot.FilePage使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在pywikibot的用法示例。


在下文中一共展示了pywikibot.FilePage方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: make_image_item

# 需要导入模块: import pywikibot [as 别名]
# 或者: from pywikibot import FilePage [as 别名]
def make_image_item(self, filename):
        commonssite = utils.create_site_instance("commons", "commons")
        imagelink = pywikibot.Link(
            filename, source=commonssite, defaultNamespace=6)
        return pywikibot.FilePage(imagelink) 
开发者ID:Vesihiisi,项目名称:COH-tools,代码行数:7,代码来源:Uploader.py

示例2: addMissingCommonsWikidataLink

# 需要导入模块: import pywikibot [as 别名]
# 或者: from pywikibot import FilePage [as 别名]
def addMissingCommonsWikidataLink(self, filename, wikidataitem):
        """
        Try to add a missing link to Commons. Returns True if it worked and False if it failed
        """
        filepage = pywikibot.FilePage(self.commons, title=filename)

        text = filepage.get()
        replaceregex = u'\{\{(Artwork|Painting|Art Photo|Google Art Project|Google Cultural Institute|Walters Art Museum artwork|NARA-image-full)'
        emptywikidataregex = u'(\s*\|\s*wikidata\s*=)\s*\n'
        wikidataregex = u'[wW]ikidata\s*=\s*(Q\d+)\s*'

        pywikibot.output(u'Working on %s' % (filepage.title(),))

        wdmatch = re.search(wikidataregex, text)

        if wdmatch:
            # Template with duplicate template problems might hit this one or when database query is a bit stale
            pywikibot.output(u'Seems to already link to Wikidata %s' % (wdmatch.group(1),))
            return False

        # First try to update an existing field
        newtext = re.sub(emptywikidataregex, u'\\1%s\n' % (wikidataitem,), text, count=1)

        if text==newtext:
            #Ok, that didn't work, just slap it at the top
            newtext = re.sub(replaceregex, u'{{\\1\n|wikidata=%s' % (wikidataitem,), text, count=1, flags=re.I)
            if text==newtext:
                pywikibot.output(u'Unable to add Wikidata link to %s' % (filename,))
                return False

        pywikibot.showDiff(text, newtext)
        summary = u'Adding link to [[:d:%s]] based on usage on that item' % (wikidataitem,)
        pywikibot.output(summary)
        filepage.put(newtext, summary=summary)
        return True 
开发者ID:multichill,项目名称:toollabs,代码行数:37,代码来源:find_painting_images.py

示例3: make_summary

# 需要导入模块: import pywikibot [as 别名]
# 或者: from pywikibot import FilePage [as 别名]
def make_summary(self, prop, value):
        if isinstance(value, pywikibot.ItemPage):
            value = value.title(insite=self.repo, asLink=True)
        elif isinstance(value, pywikibot.FilePage):
            value = '[[%s|%s]]' % (value.title(insite=self.repo),
                                   value.title(withNamespace=False))
        elif isinstance(value, pywikibot.PropertyPage):
            value = '[[%s|%s]]' % (value.title(), value.getID())
        rev_id = self.current_talk_page.latest_revision_id
        return ('Importing "[[Property:%s]]: %s" from '
                '[[Special:PermaLink/%s|talk page]]' % (prop, value, rev_id)) 
开发者ID:matejsuchanek,项目名称:pywikibot-scripts,代码行数:13,代码来源:metabot.py

示例4: fusion_cat

# 需要导入模块: import pywikibot [as 别名]
# 或者: from pywikibot import FilePage [as 别名]
def fusion_cat(tempCat,qitem=""):
    categories=[]
    img = None
    item = None
    page = pywikibot.Category(commons, tempCat)
    for image in page.members(namespaces=FILE_NAMESPACE):
        img = image.title()[5:]
        for cat in image.categories():
            if cat.title() not in blackList and not hidden(cat):
                categories.append(cat.title())
                blackList.append(cat.title())
    if qitem is not "":
        item = pywikibot.ItemPage(repo,qitem)
    else:
        item = pywikibot.ItemPage(wikidata)
        item.editLabels(label_dict, summary="#Commons2Data label")
        item.editDescriptions(descr_dict, summary="#Commons2Data description")
        item.get()
        for cat in categories:
            if cat in cache:
                for p in cache[cat]["Properties"]:
                    if p not in item.claims or p in duplicates:
                        claim = pywikibot.Claim(repo, p)
                        if "Q" in cache[cat]["Properties"][p]["Value"]:
                            claim.setTarget(pywikibot.ItemPage(repo,cache[cat]["Properties"][p]["Value"]))
                        else:
                            claim.setTarget(pywikibot.WbTime(year=cache[cat]["Properties"][p]["Value"]["Year"]))
                        item.addClaim(claim, summary=u'#Commons2Data adding claim')
            else:
                print (cat)
    title = label(item)
    print_category(item.title(), title, categories)
    categories.append("Category:"+tempCat)
    for image in page.members(namespaces=FILE_NAMESPACE):
        clean_image(image, title, categories)
    # Wikidata
    if imageProperty not in item.claims:
        claim = pywikibot.Claim(repo, imageProperty)
        claim.setTarget(pywikibot.FilePage(commons,img))
        item.addClaim(claim, summary=u"Commons2Data image")
    category = pywikibot.Category(commons, title)
    item.setSitelink(category, summary="#FileToCat Commons sitelink.")
    claim = pywikibot.Claim(repo, commonsCat)
    claim.setTarget(title)
    item.addClaim(claim, summary="#FileToCat Commons claim") 
开发者ID:Commonists,项目名称:Commons2Data,代码行数:47,代码来源:categorisation.py


注:本文中的pywikibot.FilePage方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。