Patch #1555098: use str.join() instead of repeated string

concatenation in robotparser.
This commit is contained in:
Georg Brandl 2007-03-13 09:41:31 +00:00
parent 94fe3f58d0
commit 4ffc8f5107
2 changed files with 9 additions and 9 deletions

View File

@ -65,7 +65,7 @@ class RobotFileParser:
lines.append(line.strip()) lines.append(line.strip())
line = f.readline() line = f.readline()
self.errcode = opener.errcode self.errcode = opener.errcode
if self.errcode == 401 or self.errcode == 403: if self.errcode in (401, 403):
self.disallow_all = True self.disallow_all = True
_debug("disallow all") _debug("disallow all")
elif self.errcode >= 400: elif self.errcode >= 400:
@ -168,10 +168,7 @@ class RobotFileParser:
def __str__(self): def __str__(self):
ret = "" return ''.join([str(entry) + "\n" for entry in self.entries])
for entry in self.entries:
ret = ret + str(entry) + "\n"
return ret
class RuleLine: class RuleLine:
@ -198,12 +195,12 @@ class Entry:
self.rulelines = [] self.rulelines = []
def __str__(self): def __str__(self):
ret = "" ret = []
for agent in self.useragents: for agent in self.useragents:
ret = ret + "User-agent: "+agent+"\n" ret.extend(["User-agent: ", agent, "\n"])
for line in self.rulelines: for line in self.rulelines:
ret = ret + str(line) + "\n" ret.extend([str(line), "\n"])
return ret return ''.join(ret)
def applies_to(self, useragent): def applies_to(self, useragent):
"""check if this entry applies to the specified agent""" """check if this entry applies to the specified agent"""

View File

@ -168,6 +168,9 @@ Core and builtins
Library Library
------- -------
- Patch #1555098: use str.join() instead of repeated string
concatenation in robotparser.
- Patch #1635454: the csv.DictWriter class now includes the offending - Patch #1635454: the csv.DictWriter class now includes the offending
field names in its exception message if you try to write a record with field names in its exception message if you try to write a record with
a dictionary containing fields not in the CSV field names list. a dictionary containing fields not in the CSV field names list.