Exemplo n.º 1
0
    def run(self):

        # pywikibot/families/eagle_family.py
        site = pywikibot.Site('en', 'eagle')
        repo = site.data_repository()

        selectedSet = self.getOption('selectedSet')

        for i in self.list_set[selectedSet]['lists']:
            self.current_page = pywikibot.Page(repo, i['page'])

            oldtext = self.current_page.get()

            itemList = get_property_list.getItemsForProperty(repo,
                                                             i['property'],
                                                             sort=i['show'],
                                                             labelLang='en')

            newtext = '<div style="column-count: 5; -webkit-column-count: 5; -moz-column-count: 5;">'
            for j in itemList:
                linkTitle = j[i['show']]
                newtext += "\n" + '* [[' + j['title'] + '|' + linkTitle + ']]'
            newtext += "\n</div>\n\n[[Category:" + self.list_set[selectedSet][
                'category'] + "]]"

            self.userPut(self.current_page,
                         oldtext,
                         newtext,
                         comment='Updating list')
Exemplo n.º 2
0
    def run(self):

        # pywikibot/families/eagle_family.py
        site = pywikibot.Site('en', 'eagle')
        repo = site.data_repository()

        idProp = self.getOption('idProp')
        insertProp = self.getOption('insertProp')
        matchDict = self.getOption('matchDict')

        itemList = get_property_list.getItemsForProperty(
            repo, idProp, additionalProperties=[insertProp])

        for i in itemList:
            if i['property'] not in matchDict:
                continue

            self.current_page = pywikibot.ItemPage(repo, i['title'])

            pywikibot.output('Item matched by P' + idProp + ': ' +
                             i['property'])

            toInsert = matchDict[i['property']]
            pywikibot.output('Attempting to insert P' + insertProp + ': ' +
                             toInsert)

            if insertProp in i['additionalProperties']:
                if i['additionalProperties'][insertProp] == toInsert:
                    pywikibot.output('The item already has the property ' +
                                     insertProp +
                                     ' with an identical content. Skipping')
                else:
                    pywikibot.output('The item already has the property ' +
                                     insertProp +
                                     ' with a different content: ' +
                                     i['additionalProperties'][insertProp] +
                                     '. Skipping')
                continue

            newClaim = pywikibot.Claim(repo, 'P' + insertProp)
            newClaim.setTarget(toInsert)
            if self.user_confirm(
                    'Do you really want do add the claim for property P' +
                    insertProp + '?'):
                self.current_page.addClaim(newClaim)
Exemplo n.º 3
0
	def run(self):
		
		# pywikibot/families/eagle_family.py
		site = pywikibot.Site('en', 'eagle')
		repo = site.data_repository()
		
		selectedSet = self.getOption('selectedSet')
		
		for i in self.list_set[selectedSet]['lists']:
			self.current_page = pywikibot.Page(repo, i['page'])
			
			oldtext = self.current_page.get()
			
			itemList = get_property_list.getItemsForProperty(repo, i['property'], sort=i['show'], labelLang='en')
			
			newtext = '<div style="column-count: 5; -webkit-column-count: 5; -moz-column-count: 5;">'
			for j in itemList:
				linkTitle = j[i['show']]
				newtext += "\n" + '* [[' + j['title'] + '|' + linkTitle + ']]'
			newtext += "\n</div>\n\n[[Category:" +	self.list_set[selectedSet]['category'] + "]]"
			
			self.userPut(self.current_page, oldtext, newtext, comment='Updating list')
Exemplo n.º 4
0
	def run(self):
		
		# pywikibot/families/eagle_family.py
		site = pywikibot.Site('en', 'eagle')
		repo = site.data_repository()
		
		idProp = self.getOption('idProp')
		insertProp = self.getOption('insertProp')
		matchDict = self.getOption('matchDict')
		
		itemList = get_property_list.getItemsForProperty(repo, idProp, additionalProperties=[insertProp])
		
		for i in itemList:
			if i['property'] not in matchDict:
				continue
			
			self.current_page = pywikibot.ItemPage(repo, i['title'])
			
			pywikibot.output('Item matched by P' + idProp + ': ' + i['property'])
			
			toInsert = matchDict[i['property']]
			pywikibot.output('Attempting to insert P' + insertProp + ': ' + toInsert)
			
			if insertProp in i['additionalProperties']:
				if i['additionalProperties'][insertProp] == toInsert:
					pywikibot.output('The item already has the property '
						+ insertProp + ' with an identical content. Skipping')
				else:
					pywikibot.output('The item already has the property '
					+ insertProp + ' with a different content: ' + i['additionalProperties'][insertProp] +
						'. Skipping')
				continue
			
			newClaim = pywikibot.Claim(repo, 'P' + insertProp)
			newClaim.setTarget(toInsert)
			if self.user_confirm('Do you really want do add the claim for property P' + insertProp + '?'):
				self.current_page.addClaim(newClaim)