Rosetta Code/Find unimplemented tasks: Difference between revisions

Added Python 3 implementation
(Added Python 3 implementation)
Line 1,824:
 
==={{libheader|urllib}}===
====Python 2.x====
 
<syntaxhighlight lang="python">import xml.dom.minidom
import urllib, sys
Line 1,851:
for i in [i for i in alltasks if i not in lang]:
print i</syntaxhighlight>
 
====Python 3.x====
<syntaxhighlight lang="python">
#Aamrun, 3rd February 2023
 
import xml.dom.minidom
import sys, urllib.parse, urllib.request
def findrc(category):
name = "http://www.rosettacode.org/w/api.php?action=query&list=categorymembers&cmtitle=Category:%s&cmlimit=500&format=xml" % urllib.parse.quote(category)
cmcontinue, titles = '', []
while True:
u = urllib.request.urlopen(name + cmcontinue)
xmldata = u.read()
u.close()
x = xml.dom.minidom.parseString(xmldata)
titles += [i.getAttribute("title") for i in x.getElementsByTagName("cm")]
cmcontinue = list(filter( None,
(urllib.parse.quote(i.getAttribute("cmcontinue"))
for i in x.getElementsByTagName("categorymembers")) ))
if cmcontinue:
cmcontinue = '&cmcontinue=' + cmcontinue[0]
else:
break
return titles
alltasks = findrc("Programming_Tasks")
#lang = findrc(sys.argv[1])
lang = findrc("Swift")
for i in [i for i in alltasks if i not in lang]:
print(i)
</syntaxhighlight>
 
=={{header|R}}==
503

edits