86>Apr 21 00:53:52 userdel[30042]: delete user 'rooter'
<86>Apr 21 00:53:52 groupadd[30120]: group added to /etc/group: name=rooter, GID=681
<86>Apr 21 00:53:52 groupadd[30120]: group added to /etc/gshadow: name=rooter
<86>Apr 21 00:53:52 groupadd[30120]: new group: name=rooter, GID=681
<86>Apr 21 00:53:52 useradd[30171]: new user: name=rooter, UID=681, GID=681, home=/root, shell=/bin/bash
<86>Apr 21 00:53:52 userdel[30245]: delete user 'builder'
<86>Apr 21 00:53:52 userdel[30245]: removed group 'builder' owned by 'builder'
<86>Apr 21 00:53:52 userdel[30245]: removed shadow group 'builder' owned by 'builder'
<86>Apr 21 00:53:52 groupadd[30315]: group added to /etc/group: name=builder, GID=682
<86>Apr 21 00:53:52 groupadd[30315]: group added to /etc/gshadow: name=builder
<86>Apr 21 00:53:52 groupadd[30315]: new group: name=builder, GID=682
<86>Apr 21 00:53:52 useradd[30372]: new user: name=builder, UID=682, GID=682, home=/usr/src, shell=/bin/bash
<13>Apr 21 00:53:54 rpmi: libexpat-2.2.4-alt0.M80P.1 1503871120 installed
<13>Apr 21 00:53:54 rpmi: libgdbm-1.8.3-alt10 1454943313 installed
<13>Apr 21 00:53:54 rpmi: libtinfo-devel-5.9-alt8 1456756459 installed
<13>Apr 21 00:53:54 rpmi: libncurses-devel-5.9-alt8 1456756459 installed
<13>Apr 21 00:53:54 rpmi: python-modules-curses-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:54 rpmi: libverto-0.2.6-alt1_6 1455633234 installed
<13>Apr 21 00:53:54 rpmi: libkeyutils-1.5.10-alt0.M80P.2 p8+216694.100.6.1 1547827915 installed
<13>Apr 21 00:53:54 rpmi: libcom_err-1.42.13-alt2 1449075846 installed
<13>Apr 21 00:53:54 rpmi: ca-certificates-2016.02.25-alt1 1462368370 installed
<13>Apr 21 00:53:54 rpmi: libcrypto10-1.0.2n-alt0.M80P.1 1512766129 installed
<13>Apr 21 00:53:54 rpmi: libssl10-1.0.2n-alt0.M80P.1 1512766129 installed
<86>Apr 21 00:53:54 groupadd[46841]: group added to /etc/group: name=_keytab, GID=499
<86>Apr 21 00:53:54 groupadd[46841]: group added to /etc/gshadow: name=_keytab
<86>Apr 21 00:53:54 groupadd[46841]: new group: name=_keytab, GID=499
<13>Apr 21 00:53:55 rpmi: libkrb5-1.14.6-alt1.M80P.1 1525355673 installed
<13>Apr 21 00:53:55 rpmi: python3-base-3.5.4-alt2.M80P.1 1527753911 installed
<13>Apr 21 00:53:55 rpmi: python3-3.5.4-alt2.M80P.1 1527753911 installed
<13>Apr 21 00:53:55 rpmi: python-modules-compiler-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:55 rpmi: rpm-build-python3-0.1.10.10-alt1.M80P.1 1530521451 installed
<13>Apr 21 00:53:55 rpmi: libpython3-3.5.4-alt2.M80P.1 1527753911 installed
<13>Apr 21 00:53:56 rpmi: python3-dev-3.5.4-alt2.M80P.1 1527753911 installed
<13>Apr 21 00:53:56 rpmi: python3-module-sgmllib-1.0.0-alt1.hg20100824.1.1.1 1458155334 installed
<13>Apr 21 00:53:56 rpmi: python-modules-email-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-modules-unittest-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-modules-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-modules-encodings-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-modules-xml-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-modules-hotshot-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-modules-bsddb-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-modules-ctypes-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-modules-multiprocessing-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-modules-logging-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-dev-2.7.11-alt6.M80P.1 1527682470 installed
<13>Apr 21 00:53:56 rpmi: python-tools-2to3-2.7.11-alt6.M80P.1 1527682470 installed
Installing python-module-BeautifulSoup-3.2.1-alt2.1.1.1.src.rpm
Building target platforms: x86_64
Building for target x86_64
Executing(%prep): /bin/sh -e /usr/src/tmp/rpm-tmp.49252
+ umask 022
+ /bin/mkdir -p /usr/src/RPM/BUILD
+ cd /usr/src/RPM/BUILD
+ cd /usr/src/RPM/BUILD
+ rm -rf BeautifulSoup-3.2.1
+ echo 'Source #0 (BeautifulSoup-3.2.1.tar.bz2):'
Source #0 (BeautifulSoup-3.2.1.tar.bz2):
+ /bin/tar -xf -
+ /bin/bzip2 -dc /usr/src/RPM/SOURCES/BeautifulSoup-3.2.1.tar.bz2
+ cd BeautifulSoup-3.2.1
+ /bin/chmod -c -Rf u+rwX,go-w .
+ rm -rf ../python3
+ cp -a . ../python3
+ exit 0
Executing(%build): /bin/sh -e /usr/src/tmp/rpm-tmp.49252
+ umask 022
+ /bin/mkdir -p /usr/src/RPM/BUILD
+ cd /usr/src/RPM/BUILD
+ cd BeautifulSoup-3.2.1
+ export LC_ALL=en_US.UTF-8
+ LC_ALL=en_US.UTF-8
+ CFLAGS='-pipe -Wall -g -O2'
+ python setup.py build
running build
running build_py
creating build
creating build/lib
copying BeautifulSoup.py -> build/lib
copying BeautifulSoupTests.py -> build/lib
+ pushd ../python3
~/RPM/BUILD/python3 ~/RPM/BUILD/BeautifulSoup-3.2.1
+ for i in '*.py'
+ 2to3 -w BeautifulSoup.py
RefactoringTool: Skipping optional fixer: buffer
RefactoringTool: Skipping optional fixer: idioms
RefactoringTool: Skipping optional fixer: set_literal
RefactoringTool: Skipping optional fixer: ws_comma
RefactoringTool: Refactored BeautifulSoup.py
--- BeautifulSoup.py (original)
+++ BeautifulSoup.py (refactored)
@@ -76,7 +76,7 @@
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE, DAMMIT.
"""
-from __future__ import generators
+
__author__ = "Leonard Richardson (leonardr@segfault.org)"
__version__ = "3.2.1"
@@ -85,12 +85,13 @@
from sgmllib import SGMLParser, SGMLParseError
import codecs
-import markupbase
+import _markupbase
import types
import re
import sgmllib
+import collections
try:
- from htmlentitydefs import name2codepoint
+ from html.entities import name2codepoint
except ImportError:
name2codepoint = {}
try:
@@ -100,7 +101,7 @@
#These hacks make Beautiful Soup able to parse XML with namespaces
sgmllib.tagfind = re.compile('[a-zA-Z][-_.:a-zA-Z0-9]*')
-markupbase._declname_match = re.compile(r'[a-zA-Z][-_.:a-zA-Z0-9]*\s*').match
+_markupbase._declname_match = re.compile(r'[a-zA-Z][-_.:a-zA-Z0-9]*\s*').match
DEFAULT_OUTPUT_ENCODING = "utf-8"
@@ -117,7 +118,7 @@
def _invert(h):
"Cheap function to invert a hash."
i = {}
- for k,v in h.items():
+ for k,v in list(h.items()):
i[v] = k
return i
@@ -177,7 +178,7 @@
#this element (and any children) hadn't been parsed. Connect
#the two.
lastChild = self._lastRecursiveChild()
- nextElement = lastChild.next
+ nextElement = lastChild.__next__
if self.previous:
self.previous.next = nextElement
@@ -202,7 +203,7 @@
return lastChild
def insert(self, position, newChild):
- if isinstance(newChild, basestring) \
+ if isinstance(newChild, str) \
and not isinstance(newChild, NavigableString):
newChild = NavigableString(newChild)
@@ -256,7 +257,7 @@
newChild.nextSibling.previousSibling = newChild
newChildsLastElement.next = nextChild
- if newChildsLastElement.next:
+ if newChildsLastElement.__next__:
newChildsLastElement.next.previous = newChildsLastElement
self.contents.insert(position, newChild)
@@ -357,7 +358,7 @@
return [element for element in generator()
if isinstance(element, Tag)]
# findAll*('tag-name')
- elif isinstance(name, basestring):
+ elif isinstance(name, str):
return [element for element in generator()
if isinstance(element, Tag) and
element.name == name]
@@ -370,7 +371,7 @@
g = generator()
while True:
try:
- i = g.next()
+ i = next(g)
except StopIteration:
break
if i:
@@ -386,7 +387,7 @@
def nextGenerator(self):
i = self
while i is not None:
- i = i.next
+ i = i.__next__
yield i
def nextSiblingGenerator(self):
@@ -421,19 +422,19 @@
def toEncoding(self, s, encoding=None):
"""Encodes an object to a string in some encoding, or to Unicode.
."""
- if isinstance(s, unicode):
+ if isinstance(s, str):
if encoding:
s = s.encode(encoding)
elif isinstance(s, str):
if encoding:
s = s.encode(encoding)
else:
- s = unicode(s)
+ s = str(s)
else:
if encoding:
s = self.toEncoding(str(s), encoding)
else:
- s = unicode(s)
+ s = str(s)
return s
BARE_AMPERSAND_OR_BRACKET = re.compile("([<>]|"
@@ -446,7 +447,7 @@
return "&" + self.XML_SPECIAL_CHARS_TO_ENTITIES[x.group(0)[0]] + ";"
-class NavigableString(unicode, PageElement):
+class NavigableString(str, PageElement):
def __new__(cls, value):
"""Create a new NavigableString.
@@ -456,9 +457,9 @@
passed in to the superclass's __new__ or the superclass won't know
how to handle non-ASCII characters.
"""
- if isinstance(value, unicode):
- return unicode.__new__(cls, value)
- return unicode.__new__(cls, value, DEFAULT_OUTPUT_ENCODING)
+ if isinstance(value, str):
+ return str.__new__(cls, value)
+ return str.__new__(cls, value, DEFAULT_OUTPUT_ENCODING)
def __getnewargs__(self):
return (NavigableString.__str__(self),)
@@ -470,7 +471,7 @@
if attr == 'string':
return self
else:
- raise AttributeError, "'%s' object has no attribute '%s'" % (self.__class__.__name__, attr)
+ raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
def __unicode__(self):
return str(self).decode(DEFAULT_OUTPUT_ENCODING)
@@ -514,23 +515,23 @@
escaped."""
x = match.group(1)
if self.convertHTMLEntities and x in name2codepoint:
- return unichr(name2codepoint[x])
+ return chr(name2codepoint[x])
elif x in self.XML_ENTITIES_TO_SPECIAL_CHARS:
if self.convertXMLEntities:
return self.XML_ENTITIES_TO_SPECIAL_CHARS[x]
else:
- return u'&%s;' % x
+ return '&%s;' % x
elif len(x) > 0 and x[0] == '#':
# Handle numeric entities
if len(x) > 1 and x[1] == 'x':
- return unichr(int(x[2:], 16))
+ return chr(int(x[2:], 16))
else:
- return unichr(int(x[1:]))
+ return chr(int(x[1:]))
elif self.escapeUnrecognizedEntities:
- return u'&%s;' % x
+ return '&%s;' % x
else:
- return u'&%s;' % x
+ return '&%s;' % x
def __init__(self, parser, name, attrs=None, parent=None,
previous=None):
@@ -544,7 +545,7 @@
if attrs is None:
attrs = []
elif isinstance(attrs, dict):
- attrs = attrs.items()
+ attrs = list(attrs.items())
self.attrs = attrs
self.contents = []
self.setup(parent, previous)
@@ -555,11 +556,11 @@
self.escapeUnrecognizedEntities = parser.escapeUnrecognizedEntities
# Convert any HTML, XML, or numeric entities in the attribute values.
- convert = lambda(k, val): (k,
+ convert = lambda k_val: (k_val[0],
re.sub("&(#\d+|#x[0-9a-fA-F]+|\w+);",
self._convertEntities,
- val))
- self.attrs = map(convert, self.attrs)
+ k_val[1]))
+ self.attrs = list(map(convert, self.attrs))
def getString(self):
if (len(self.contents) == 1
@@ -573,16 +574,16 @@
string = property(getString, setString)
- def getText(self, separator=u""):
+ def getText(self, separator=""):
if not len(self.contents):
- return u""
- stopNode = self._lastRecursiveChild().next
+ return ""
+ stopNode = self._lastRecursiveChild().__next__
strings = []
current = self.contents[0]
while current is not stopNode:
if isinstance(current, NavigableString):
strings.append(current.strip())
- current = current.next
+ current = current.__next__
return separator.join(strings)
text = property(getText)
@@ -605,7 +606,7 @@
raise ValueError("Tag.index: element not in tag")
def has_key(self, key):
- return self._getAttrMap().has_key(key)
+ return key in self._getAttrMap()
def __getitem__(self, key):
"""tag[key] returns the value of the 'key' attribute for the tag,
@@ -623,7 +624,7 @@
def __contains__(self, x):
return x in self.contents
- def __nonzero__(self):
+ def __bool__(self):
"A tag is non-None even if it has no contents."
return True
@@ -649,14 +650,14 @@
#We don't break because bad HTML can define the same
#attribute multiple times.
self._getAttrMap()
- if self.attrMap.has_key(key):
+ if key in self.attrMap:
del self.attrMap[key]
def __call__(self, *args, **kwargs):
"""Calling a tag like a function is the same as calling its
findAll() method. Eg. tag('a') returns a list of all the A tags
found within this tag."""
- return apply(self.findAll, args, kwargs)
+ return self.findAll(*args, **kwargs)
def __getattr__(self, tag):
#print "Getattr %s.%s" % (self.__class__, tag)
@@ -664,7 +665,7 @@
return self.find(tag[:-3])
elif tag.find('__') != 0:
return self.find(tag)
- raise AttributeError, "'%s' object has no attribute '%s'" % (self.__class__, tag)
+ raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
def __eq__(self, other):
"""Returns true iff this tag has the same name, the same attributes,
@@ -708,7 +709,7 @@
if self.attrs:
for key, val in self.attrs:
fmt = '%s="%s"'
- if isinstance(val, basestring):
+ if isinstance(val, str):
if self.containsSubstitutions and '%SOUP-ENCODING%' in val:
val = self.substituteEncoding(val, encoding)
@@ -785,7 +786,7 @@
return
current = self.contents[0]
while current is not None:
- next = current.next
+ next = current.__next__
if isinstance(current, Tag):
del current.contents[:]
current.parent = None
@@ -878,11 +879,11 @@
def recursiveChildGenerator(self):
if not len(self.contents):
raise StopIteration
- stopNode = self._lastRecursiveChild().next
+ stopNode = self._lastRecursiveChild().__next__
current = self.contents[0]
while current is not stopNode:
yield current
- current = current.next
+ current = current.__next__
# Next, a couple classes to represent queries and their results.
@@ -892,7 +893,7 @@
def __init__(self, name=None, attrs={}, text=None, **kwargs):
self.name = name
- if isinstance(attrs, basestring):
+ if isinstance(attrs, str):
kwargs['class'] = _match_css_class(attrs)
attrs = None
if kwargs:
@@ -916,7 +917,7 @@
if isinstance(markupName, Tag):
markup = markupName
markupAttrs = markup
- callFunctionWithTagData = callable(self.name) \
+ callFunctionWithTagData = isinstance(self.name, collections.Callable) \
and not isinstance(markupName, Tag)
if (not self.name) \
@@ -928,7 +929,7 @@
else:
match = True
markupAttrMap = None
- for attr, matchAgainst in self.attrs.items():
+ for attr, matchAgainst in list(self.attrs.items()):
if not markupAttrMap:
if hasattr(markupAttrs, 'get'):
markupAttrMap = markupAttrs
@@ -966,12 +967,12 @@
found = self.searchTag(markup)
# If it's text, make sure the text matches.
elif isinstance(markup, NavigableString) or \
- isinstance(markup, basestring):
+ isinstance(markup, str):
if self._matches(markup, self.text):
found = markup
else:
- raise Exception, "I don't know how to match against a %s" \
- % markup.__class__
+ raise Exception("I don't know how to match against a %s" \
+ % markup.__class__)
return found
def _matches(self, markup, matchAgainst):
@@ -979,15 +980,15 @@
result = False
if matchAgainst is True:
result = markup is not None
- elif callable(matchAgainst):
+ elif isinstance(matchAgainst, collections.Callable):
result = matchAgainst(markup)
else:
#Custom match methods take the tag as an argument, but all
#other ways of matching match the tag name as a string.
if isinstance(markup, Tag):
markup = markup.name
- if markup and not isinstance(markup, basestring):
- markup = unicode(markup)
+ if markup and not isinstance(markup, str):
+ markup = str(markup)
#Now we know that chunk is either a string, or None.
if hasattr(matchAgainst, 'match'):
# It's a regexp object.
@@ -995,10 +996,10 @@
elif hasattr(matchAgainst, '__iter__'): # list-like
result = markup in matchAgainst
elif hasattr(matchAgainst, 'items'):
- result = markup.has_key(matchAgainst)
- elif matchAgainst and isinstance(markup, basestring):
- if isinstance(markup, unicode):
- matchAgainst = unicode(matchAgainst)
+ result = matchAgainst in markup
+ elif matchAgainst and isinstance(markup, str):
+ if isinstance(markup, str):
+ matchAgainst = str(matchAgainst)
else:
matchAgainst = str(matchAgainst)
@@ -1023,7 +1024,7 @@
for portion in args:
if hasattr(portion, 'items'):
#It's a map. Merge it.
- for k,v in portion.items():
+ for k,v in list(portion.items()):
built[k] = v
elif hasattr(portion, '__iter__'): # is a list
#It's a list. Map each item to the default.
@@ -1066,7 +1067,7 @@
lambda x: '')
]
- ROOT_TAG_NAME = u'[document]'
+ ROOT_TAG_NAME = '[document]'
HTML_ENTITIES = "html"
XML_ENTITIES = "xml"
@@ -1162,14 +1163,14 @@
def _feed(self, inDocumentEncoding=None, isHTML=False):
# Convert the document to Unicode.
markup = self.markup
- if isinstance(markup, unicode):
+ if isinstance(markup, str):
if not hasattr(self, 'originalEncoding'):
self.originalEncoding = None
else:
dammit = UnicodeDammit\
(markup, [self.fromEncoding, inDocumentEncoding],
smartQuotesTo=self.smartQuotesTo, isHTML=isHTML)
- markup = dammit.unicode
+ markup = dammit.str
self.originalEncoding = dammit.originalEncoding
self.declaredHTMLEncoding = dammit.declaredHTMLEncoding
if markup:
@@ -1208,8 +1209,8 @@
def isSelfClosingTag(self, name):
"""Returns true iff the given string is the name of a
self-closing tag according to this parser."""
- return self.SELF_CLOSING_TAGS.has_key(name) \
- or self.instanceSelfClosingTags.has_key(name)
+ return name in self.SELF_CLOSING_TAGS \
+ or name in self.instanceSelfClosingTags
def reset(self):
Tag.__init__(self, self, self.ROOT_TAG_NAME)
@@ -1238,7 +1239,7 @@
def endData(self, containerClass=NavigableString):
if self.currentData:
- currentData = u''.join(self.currentData)
+ currentData = ''.join(self.currentData)
if (currentData.translate(self.STRIP_ASCII_SPACES) == '' and
not set([tag.name for tag in self.tagStack]).intersection(
self.PRESERVE_WHITESPACE_TAGS)):
@@ -1301,7 +1302,7 @@
nestingResetTriggers = self.NESTABLE_TAGS.get(name)
isNestable = nestingResetTriggers != None
- isResetNesting = self.RESET_NESTING_TAGS.has_key(name)
+ isResetNesting = name in self.RESET_NESTING_TAGS
popTo = None
inclusive = True
for i in range(len(self.tagStack)-1, 0, -1):
@@ -1314,7 +1315,7 @@
if (nestingResetTriggers is not None
and p.name in nestingResetTriggers) \
or (nestingResetTriggers is None and isResetNesting
- and self.RESET_NESTING_TAGS.has_key(p.name)):
+ and p.name in self.RESET_NESTING_TAGS):
#If we encounter one of the nesting reset triggers
#peculiar to this tag, or we encounter another tag
@@ -1385,7 +1386,7 @@
object, possibly one with a %SOUP-ENCODING% slot into which an
encoding will be plugged later."""
if text[:3] == "xml":
- text = u"xml version='1.0' encoding='%SOUP-ENCODING%'"
+ text = "xml version='1.0' encoding='%SOUP-ENCODING%'"
self._toStringSubclass(text, ProcessingInstruction)
def handle_comment(self, text):
@@ -1395,7 +1396,7 @@
def handle_charref(self, ref):
"Handle character references as data."
if self.convertEntities:
- data = unichr(int(ref))
+ data = chr(int(ref))
else:
data = '%s;' % ref
self.handle_data(data)
@@ -1407,7 +1408,7 @@
data = None
if self.convertHTMLEntities:
try:
- data = unichr(name2codepoint[ref])
+ data = chr(name2codepoint[ref])
except KeyError:
pass
@@ -1516,7 +1517,7 @@
BeautifulStoneSoup before writing your own subclass."""
def __init__(self, *args, **kwargs):
- if not kwargs.has_key('smartQuotesTo'):
+ if 'smartQuotesTo' not in kwargs:
kwargs['smartQuotesTo'] = self.HTML_ENTITIES
kwargs['isHTML'] = True
BeautifulStoneSoup.__init__(self, *args, **kwargs)
@@ -1699,7 +1700,7 @@
parent._getAttrMap()
if (isinstance(tag, Tag) and len(tag.contents) == 1 and
isinstance(tag.contents[0], NavigableString) and
- not parent.attrMap.has_key(tag.name)):
+ tag.name not in parent.attrMap):
parent[tag.name] = tag.contents[0]
BeautifulStoneSoup.popTag(self)
@@ -1773,9 +1774,9 @@
self._detectEncoding(markup, isHTML)
self.smartQuotesTo = smartQuotesTo
self.triedEncodings = []
- if markup == '' or isinstance(markup, unicode):
+ if markup == '' or isinstance(markup, str):
self.originalEncoding = None
- self.unicode = unicode(markup)
+ self.str = str(markup)
return
u = None
@@ -1788,7 +1789,7 @@
if u: break
# If no luck and we have auto-detection library, try that:
- if not u and chardet and not isinstance(self.markup, unicode):
+ if not u and chardet and not isinstance(self.markup, str):
u = self._convertFrom(chardet.detect(self.markup)['encoding'])
# As a last resort, try utf-8 and windows-1252:
@@ -1797,7 +1798,7 @@
u = self._convertFrom(proposed_encoding)
if u: break
- self.unicode = u
+ self.str = u
if not u: self.originalEncoding = None
def _subMSChar(self, orig):
@@ -1824,7 +1825,7 @@
"iso-8859-1",
"iso-8859-2"):
markup = re.compile("([\x80-\x9f])").sub \
- (lambda(x): self._subMSChar(x.group(1)),
+ (lambda x: self._subMSChar(x.group(1)),
markup)
try:
@@ -1832,7 +1833,7 @@
u = self._toUnicode(markup, proposed)
self.markup = u
self.originalEncoding = proposed
- except Exception, e:
+ except Exception as e:
# print "That didn't work!"
# print e
return None
@@ -1861,7 +1862,7 @@
elif data[:4] == '\xff\xfe\x00\x00':
encoding = 'utf-32le'
data = data[4:]
- newdata = unicode(data, encoding)
+ newdata = str(data, encoding)
return newdata
def _detectEncoding(self, xml_RefactoringTool: Files that were modified:
RefactoringTool: BeautifulSoup.py
data, isHTML=False):
@@ -1874,41 +1875,41 @@
elif xml_data[:4] == '\x00\x3c\x00\x3f':
# UTF-16BE
sniffed_xml_encoding = 'utf-16be'
- xml_data = unicode(xml_data, 'utf-16be').encode('utf-8')
+ xml_data = str(xml_data, 'utf-16be').encode('utf-8')
elif (len(xml_data) >= 4) and (xml_data[:2] == '\xfe\xff') \
and (xml_data[2:4] != '\x00\x00'):
# UTF-16BE with BOM
sniffed_xml_encoding = 'utf-16be'
- xml_data = unicode(xml_data[2:], 'utf-16be').encode('utf-8')
+ xml_data = str(xml_data[2:], 'utf-16be').encode('utf-8')
elif xml_data[:4] == '\x3c\x00\x3f\x00':
# UTF-16LE
sniffed_xml_encoding = 'utf-16le'
- xml_data = unicode(xml_data, 'utf-16le').encode('utf-8')
+ xml_data = str(xml_data, 'utf-16le').encode('utf-8')
elif (len(xml_data) >= 4) and (xml_data[:2] == '\xff\xfe') and \
(xml_data[2:4] != '\x00\x00'):
# UTF-16LE with BOM
sniffed_xml_encoding = 'utf-16le'
- xml_data = unicode(xml_data[2:], 'utf-16le').encode('utf-8')
+ xml_data = str(xml_data[2:], 'utf-16le').encode('utf-8')
elif xml_data[:4] == '\x00\x00\x00\x3c':
# UTF-32BE
sniffed_xml_encoding = 'utf-32be'
- xml_data = unicode(xml_data, 'utf-32be').encode('utf-8')
+ xml_data = str(xml_data, 'utf-32be').encode('utf-8')
elif xml_data[:4] == '\x3c\x00\x00\x00':
# UTF-32LE
sniffed_xml_encoding = 'utf-32le'
- xml_data = unicode(xml_data, 'utf-32le').encode('utf-8')
+ xml_data = str(xml_data, 'utf-32le').encode('utf-8')
elif xml_data[:4] == '\x00\x00\xfe\xff':
# UTF-32BE with BOM
sniffed_xml_encoding = 'utf-32be'
- xml_data = unicode(xml_data[4:], 'utf-32be').encode('utf-8')
+ xml_data = str(xml_data[4:], 'utf-32be').encode('utf-8')
elif xml_data[:4] == '\xff\xfe\x00\x00':
# UTF-32LE with BOM
sniffed_xml_encoding = 'utf-32le'
- xml_data = unicode(xml_data[4:], 'utf-32le').encode('utf-8')
+ xml_data = str(xml_data[4:], 'utf-32le').encode('utf-8')
elif xml_data[:3] == '\xef\xbb\xbf':
# UTF-8 with BOM
sniffed_xml_encoding = 'utf-8'
- xml_data = unicode(xml_data[3:], 'utf-8').encode('utf-8')
+ xml_data = str(xml_data[3:], 'utf-8').encode('utf-8')
else:
sniffed_xml_encoding = 'ascii'
pass
@@ -1971,7 +1972,7 @@
250,251,252,253,254,255)
import string
c.EBCDIC_TO_ASCII_MAP = string.maketrans( \
- ''.join(map(chr, range(256))), ''.join(map(chr, emap)))
+ ''.join(map(chr, list(range(256)))), ''.join(map(chr, emap)))
return s.translate(c.EBCDIC_TO_ASCII_MAP)
MS_CHARS = { '\x80' : ('euro', '20AC'),
@@ -2014,4 +2015,4 @@
if __name__ == '__main__':
import sys
soup = BeautifulSoup(sys.stdin)
- print soup.prettify()
+ print(soup.prettify())
+ for i in '*.py'
+ 2to3 -w BeautifulSoupTests.py
RefactoringTool: Skipping optional fixer: buffer
RefactoringTool: Skipping optional fixer: idioms
RefactoringTool: Skipping optional fixer: set_literal
RefactoringTool: Skipping optional fixer: ws_comma
RefactoringTool: Refactored BeautifulSoupTests.py
--- BeautifulSoupTests.py (original)
+++ BeautifulSoupTests.py (refactored)
@@ -82,7 +82,7 @@
def testFindAllText(self):
soup = BeautifulSoup("\xbb")
self.assertEqual(soup.findAll(text=re.compile('.*')),
- [u'\xbb'])
+ ['\xbb'])
def testFindAllByRE(self):
import re
@@ -123,26 +123,26 @@
def testParents(self):
soup = BeautifulSoup('
Blah')
b = soup.b
- self.assertEquals(len(b.findParents('ul', {'id' : 'foo'})), 2)
- self.assertEquals(b.findParent('ul')['a'], 'b')
+ self.assertEqual(len(b.findParents('ul', {'id' : 'foo'})), 2)
+ self.assertEqual(b.findParent('ul')['a'], 'b')
PROXIMITY_TEST = BeautifulSoup('')
def testNext(self):
soup = self.PROXIMITY_TEST
b = soup.find('b', {'id' : 2})
- self.assertEquals(b.findNext('b')['id'], '3')
- self.assertEquals(b.findNext('b')['id'], '3')
- self.assertEquals(len(b.findAllNext('b')), 2)
- self.assertEquals(len(b.findAllNext('b', {'id' : 4})), 1)
+ self.assertEqual(b.findNext('b')['id'], '3')
+ self.assertEqual(b.findNext('b')['id'], '3')
+ self.assertEqual(len(b.findAllNext('b')), 2)
+ self.assertEqual(len(b.findAllNext('b', {'id' : 4})), 1)
def testPrevious(self):
soup = self.PROXIMITY_TEST
b = soup.find('b', {'id' : 3})
- self.assertEquals(b.findPrevious('b')['id'], '2')
- self.assertEquals(b.findPrevious('b')['id'], '2')
- self.assertEquals(len(b.findAllPrevious('b')), 2)
- self.assertEquals(len(b.findAllPrevious('b', {'id' : 2})), 1)
+ self.assertEqual(b.findPrevious('b')['id'], '2')
+ self.assertEqual(b.findPrevious('b')['id'], '2')
+ self.assertEqual(len(b.findAllPrevious('b')), 2)
+ self.assertEqual(len(b.findAllPrevious('b', {'id' : 2})), 1)
SIBLING_TEST = BeautifulSoup('
')
@@ -151,30 +151,30 @@
soup = self.SIBLING_TEST
tag = 'blockquote'
b = soup.find(tag, {'id' : 2})
- self.assertEquals(b.findNext(tag)['id'], '2.1')
- self.assertEquals(b.findNextSibling(tag)['id'], '3')
- self.assertEquals(b.findNextSibling(tag)['id'], '3')
- self.assertEquals(len(b.findNextSiblings(tag)), 2)
- self.assertEquals(len(b.findNextSiblings(tag, {'id' : 4})), 1)
+ self.assertEqual(b.findNext(tag)['id'], '2.1')
+ self.assertEqual(b.findNextSibling(tag)['id'], '3')
+ self.assertEqual(b.findNextSibling(tag)['id'], '3')
+ self.assertEqual(len(b.findNextSiblings(tag)), 2)
+ self.assertEqual(len(b.findNextSiblings(tag, {'id' : 4})), 1)
def testPreviousSibling(self):
soup = self.SIBLING_TEST
tag = 'blockquote'
b = soup.find(tag, {'id' : 3})
- self.assertEquals(b.findPrevious(tag)['id'], '2.1')
- self.assertEquals(b.findPreviousSibling(tag)['id'], '2')
- self.assertEquals(b.findPreviousSibling(tag)['id'], '2')
- self.assertEquals(len(b.findPreviousSiblings(tag)), 2)
- self.assertEquals(len(b.findPreviousSiblings(tag, id=1)), 1)
+ self.assertEqual(b.findPrevious(tag)['id'], '2.1')
+ self.assertEqual(b.findPreviousSibling(tag)['id'], '2')
+ self.assertEqual(b.findPreviousSibling(tag)['id'], '2')
+ self.assertEqual(len(b.findPreviousSiblings(tag)), 2)
+ self.assertEqual(len(b.findPreviousSiblings(tag, id=1)), 1)
def testTextNavigation(self):
soup = BeautifulSoup('FooBarBaz
Blee
Blargh')
baz = soup.find(text='Baz')
- self.assertEquals(baz.findParent("i")['id'], '1')
- self.assertEquals(baz.findNext(text='Blee'), 'Blee')
- self.assertEquals(baz.findNextSibling(text='Blee'), 'Blee')
- self.assertEquals(baz.findNextSibling(text='Blargh'), None)
- self.assertEquals(baz.findNextSibling('hr')['id'], '1')
+ self.assertEqual(baz.findParent("i")['id'], '1')
+ self.assertEqual(baz.findNext(text='Blee'), 'Blee')
+ self.assertEqual(baz.findNextSibling(text='Blee'), 'Blee')
+ self.assertEqual(baz.findNextSibling(text='Blargh'), None)
+ self.assertEqual(baz.findNextSibling('hr')['id'], '1')
class SiblingRivalry(SoupTest):
"Tests the nextSibling and previousSibling navigation."
@@ -182,53 +182,53 @@
def testSiblings(self):
soup = BeautifulSoup("")
secondLI = soup.find('li').nextSibling
- self.assert_(secondLI.name == 'li' and secondLI.string == '2')
- self.assertEquals(soup.find(text='1').nextSibling.name, 'p')
- self.assertEquals(soup.find('p').nextSibling, 'B')
- self.assertEquals(soup.find('p').nextSibling.previousSibling.nextSibling, 'B')
+ self.assertTrue(secondLI.name == 'li' and secondLI.string == '2')
+ self.assertEqual(soup.find(text='1').nextSibling.name, 'p')
+ self.assertEqual(soup.find('p').nextSibling, 'B')
+ self.assertEqual(soup.find('p').nextSibling.previousSibling.nextSibling, 'B')
class TagsAreObjectsToo(SoupTest):
"Tests the various built-in functions of Tag objects."
def testLen(self):
soup = BeautifulSoup("123")
- self.assertEquals(len(soup.top), 3)
+ self.assertEqual(len(soup.top), 3)
class StringEmUp(SoupTest):
"Tests the use of 'string' as an alias for a tag's only content."
def testString(self):
s = BeautifulSoup("foo")
- self.assertEquals(s.b.string, 'foo')
+ self.assertEqual(s.b.string, 'foo')
def testLackOfString(self):
s = BeautifulSoup("feo")
- self.assert_(not s.b.string)
+ self.assertTrue(not s.b.string)
def testStringAssign(self):
s = BeautifulSoup("")
b = s.b
b.string = "foo"
string = b.string
- self.assertEquals(string, "foo")
- self.assert_(isinstance(string, NavigableString))
+ self.assertEqual(string, "foo")
+ self.assertTrue(isinstance(string, NavigableString))
class AllText(SoupTest):
"Tests the use of 'text' to get all of string content from the tag."
def testText(self):
soup = BeautifulSoup("- spam
- eggs
- cheese
")
- self.assertEquals(soup.ul.text, "spameggscheese")
- self.assertEquals(soup.ul.getText('/'), "spam/eggs/cheese")
+ self.assertEqual(soup.ul.text, "spameggscheese")
+ self.assertEqual(soup.ul.getText('/'), "spam/eggs/cheese")
class ThatsMyLimit(SoupTest):
"Tests the limit argument."
def testBasicLimits(self):
s = BeautifulSoup('
')
- self.assertEquals(len(s.findAll('br')), 4)
- self.assertEquals(len(s.findAll('br', limit=2)), 2)
- self.assertEquals(len(s('br', limit=2)), 2)
+ self.assertEqual(len(s.findAll('br')), 4)
+ self.assertEqual(len(s.findAll('br', limit=2)), 2)
+ self.assertEqual(len(s('br', limit=2)), 2)
class OnlyTheLonely(SoupTest):
"Tests the parseOnly argument to the constructor."
@@ -244,19 +244,19 @@
def testOnly(self):
strainer = SoupStrainer("b")
soup = BeautifulSoup(self.x, parseOnlyThese=strainer)
- self.assertEquals(len(soup), 15)
+ self.assertEqual(len(soup), 15)
strainer = SoupStrainer(id=re.compile("100.*"))
soup = BeautifulSoup(self.x, parseOnlyThese=strainer)
- self.assertEquals(len(soup), 5)
+ self.assertEqual(len(soup), 5)
strainer = SoupStrainer(text=re.compile("10[01].*"))
soup = BeautifulSoup(self.x, parseOnlyThese=strainer)
- self.assertEquals(len(soup), 10)
-
- strainer = SoupStrainer(text=lambda(x):x[8]=='3')
+ self.assertEqual(len(soup), 10)
+
+ strainer = SoupStrainer(text=lambda x:x[8]=='3')
soup = BeautifulSoup(self.x, parseOnlyThese=strainer)
- self.assertEquals(len(soup), 3)
+ self.assertEqual(len(soup), 3)
class PickleMeThis(SoupTest):
"Testing features like pickle and deepcopy."
@@ -294,7 +294,7 @@
self.assertEqual(str(copied), str(self.soup))
def testUnicodePickle(self):
- import cPickle as pickle
+ import pickle as pickle
html = "" + chr(0xc3) + ""
soup = BeautifulSoup(html)
dumped = pickle.dumps(soup, pickle.HIGHEST_PROTOCOL)
@@ -338,7 +338,7 @@
soup = BeautifulSoup(text)
c = soup.c
soup.c.replaceWith(c)
- self.assertEquals(str(soup), text)
+ self.assertEqual(str(soup), text)
# A very simple case
soup = BeautifulSoup("Argh!")
@@ -347,27 +347,27 @@
b = soup.b
self.assertEqual(newText.previous, b)
self.assertEqual(newText.parent, b)
- self.assertEqual(newText.previous.next, newText)
- self.assertEqual(newText.next, None)
+ self.assertEqual(newText.previous.__next__, newText)
+ self.assertEqual(newText.__next__, None)
# A more complex case
soup = BeautifulSoup("Argh!")
soup.b.insert(1, "Hooray!")
newText = soup.find(text="Hooray!")
self.assertEqual(newText.previous, "Argh!")
- self.assertEqual(newText.previous.next, newText)
+ self.assertEqual(newText.previous.__next__, newText)
self.assertEqual(newText.previousSibling, "Argh!")
self.assertEqual(newText.previousSibling.nextSibling, newText)
self.assertEqual(newText.nextSibling, None)
- self.assertEqual(newText.next, soup.c)
+ self.assertEqual(newText.__next__, soup.c)
text = "There's no business like show business"
soup = BeautifulSoup(text)
no, show = soup.findAll('b')
show.replaceWith(no)
- self.assertEquals(str(soup), "There's business like no business")
+ self.assertEqual(str(soup), "There's business like no business")
# Even more complex
soup = BeautifulSoup("Findlady!")
@@ -380,14 +380,14 @@
theText = tag.find(text=True)
findText = b.find(text="Find")
- self.assertEqual(findText.next, tag)
+ self.assertEqual(findText.__next__, tag)
self.assertEqual(tag.previous, findText)
self.assertEqual(b.nextSibling, tag)
self.assertEqual(tag.previousSibling, b)
self.assertEqual(tag.nextSibling, c)
self.assertEqual(c.previousSibling, tag)
- self.assertEqual(theText.next, c)
+ self.assertEqual(theText.__next__, c)
self.assertEqual(c.previous, theText)
# Aand... incredibly complex.
@@ -401,7 +401,7 @@
self.assertEqual(str(soup), "Werefusetoservice")
self.assertEqual(f.previous, weText)
- self.assertEqual(weText.next, f)
+ self.assertEqual(weText.__next__, f)
self.assertEqual(f.previousSibling, weText)
self.assertEqual(f.nextSibling, None)
self.assertEqual(weText.nextSibling, f)
@@ -443,7 +443,7 @@
oldPrevious = roman.previous
endOfThisTag = roman.nextSibling.previous
self.assertEqual(oldPrevious, "2")
- self.assertEqual(roman.next, "i")
+ self.assertEqual(roman.__next__, "i")
self.assertEqual(endOfThisTag, "ii")
self.assertEqual(roman.previousSibling, numbers)
self.assertEqual(roman.nextSibling, letters)
@@ -451,12 +451,12 @@
roman.extract()
self.assertEqual(roman.parent, None)
self.assertEqual(roman.previous, None)
- self.assertEqual(roman.next, "i")
+ self.assertEqual(roman.__next__, "i")
self.assertEqual(letters.previous, '2')
self.assertEqual(roman.previousSibling, None)
self.assertEqual(roman.nextSibling, None)
- self.assertEqual(endOfThisTag.next, None)
- self.assertEqual(roman.b.contents[0].next, None)
+ self.assertEqual(endOfThisTag.__next__, None)
+ self.assertEqual(roman.b.contents[0].__next__, None)
self.assertEqual(numbers.nextSibling, letters)
self.assertEqual(letters.previousSibling, numbers)
self.assertEqual(len(doc.contents), 2)
@@ -470,7 +470,7 @@
three = soup.find(text="3")
toExtract = soup.b
soup.b.extract()
- self.assertEqual(one.next, three)
+ self.assertEqual(one.__next__, three)
self.assertEqual(three.previous, one)
self.assertEqual(one.parent.nextSibling, three)
self.assertEqual(three.previousSibling, soup.a)
@@ -485,7 +485,7 @@
def testHasKey(self):
text = ""
- self.assertEquals(BeautifulSoup(text).foo.has_key('attr'), True)
+ self.assertEqual('attr' in BeautifulSoup(text).foo, True)
class QuoteMeOnThat(SoupTest):
"Test quoting"
@@ -495,7 +495,7 @@
text = """a"""
soup = BeautifulSoup(text)
- self.assertEquals(soup.renderContents(), text)
+ self.assertEqual(soup.renderContents(), text)
soup.foo['attr'] = 'Brawls happen at "Bob\'s Bar"'
newText = """a"""
@@ -542,7 +542,7 @@
self.assertEqual(soup.b.i.string, 'bar')
self.assertEqual(soup.b['id'], '1')
self.assertEqual(soup.b.contents[0], 'foo')
- self.assert_(not soup.a)
+ self.assertTrue(not soup.a)
#Test the .fooTag variant of .foo.
self.assertEqual(soup.bTag.iTag.string, 'bar')
@@ -562,24 +562,24 @@
text = """"""
soup = BeautifulSoup(text)
- self.assertEquals(soup.table.table.td.string, 'Juicy text')
- self.assertEquals(len(soup.findAll('table')), 2)
- self.assertEquals(len(soup.table.findAll('table')), 1)
- self.assertEquals(soup.find('table', {'id' : 2}).parent.parent.parent.name,
+ self.assertEqual(soup.table.table.td.string, 'Juicy text')
+ self.assertEqual(len(soup.findAll('table')), 2)
+ self.assertEqual(len(soup.table.findAll('table')), 1)
+ self.assertEqual(soup.find('table', {'id' : 2}).parent.parent.parent.name,
'table')
text = ""
soup = BeautifulSoup(text)
- self.assertEquals(soup.table.tr.td.div.table.contents[0], "Foo")
+ self.assertEqual(soup.table.tr.td.div.table.contents[0], "Foo")
text = """"""
soup = BeautifulSoup(text)
- self.assertEquals(soup.table.thead.tr.contents[0], "Foo")
+ self.assertEqual(soup.table.thead.tr.contents[0], "Foo")
def testBadNestedTables(self):
soup = BeautifulSoup("")
- self.assertEquals(soup.table.tr.table.tr['id'], 'nested')
+ self.assertEqual(soup.table.tr.table.tr['id'], 'nested')
class CleanupOnAisleFour(SoupTest):
"""Here we test cleanup of text that breaks SGMLParser or is just
@@ -612,16 +612,16 @@
self.assertSoupEquals(xml, xml)
r = re.compile("foo.*bar")
soup = BeautifulSoup(xml)
- self.assertEquals(soup.find(text=r).string, "foobar")
- self.assertEquals(soup.find(text=r).__class__, CData)
+ self.assertEqual(soup.find(text=r).string, "foobar")
+ self.assertEqual(soup.find(text=r).__class__, CData)
def testComments(self):
xml = "foobaz"
self.assertSoupEquals(xml)
r = re.compile("foo.*bar")
soup = BeautifulSoup(xml)
- self.assertEquals(soup.find(text=r).string, "foobar")
- self.assertEquals(soup.find(text="foobar").__class__, Comment)
+ self.assertEqual(soup.find(text=r).string, "foobar")
+ self.assertEqual(soup.find(text="foobar").__class__, Comment)
def testDeclaration(self):
xml = "foobaz"
@@ -629,15 +629,15 @@
r = re.compile(".*foo.*bar")
soup = BeautifulSoup(xml)
text = "DOCTYPE foobar"
- self.assertEquals(soup.find(text=r).string, text)
- self.assertEquals(soup.find(text=text).__class__, Declaration)
+ self.assertEqual(soup.find(text=r).string, text)
+ self.assertEqual(soup.find(text=text).__class__, Declaration)
namespaced_doctype = (''
'foo')
soup = BeautifulSoup(namespaced_doctype)
- self.assertEquals(soup.contents[0],
+ self.assertEqual(soup.contents[0],
'DOCTYPE xsl:stylesheet SYSTEM "htmlent.dtd"')
- self.assertEquals(soup.html.contents[0], 'foo')
+ self.assertEqual(soup.html.contents[0], 'foo')
def testEntityConversions(self):
text = "<<sacré bleu!>>"
@@ -649,39 +649,39 @@
xhtmlEnt = BeautifulStoneSoup.XHTML_ENTITIES
soup = BeautifulStoneSoup(text, convertEntities=xmlEnt)
- self.assertEquals(str(soup), "<<sacré bleu!>>")
+ self.assertEqual(str(soup), "<<sacré bleu!>>")
soup = BeautifulStoneSoup(text, convertEntities=htmlEnt)
- self.assertEquals(unicode(soup), u"<<sacr\xe9 bleu!>>")
+ self.assertEqual(str(soup), "<<sacr\xe9 bleu!>>")
# Make sure the "XML", "HTML", and "XHTML" settings work.
text = "<™'"
soup = BeautifulStoneSoup(text, convertEntities=xmlEnt)
- self.assertEquals(unicode(soup), u"<™'")
+ self.assertEqual(str(soup), "<™'")
soup = BeautifulStoneSoup(text, convertEntities=htmlEnt)
- self.assertEquals(unicode(soup), u"<\u2122'")
+ self.assertEqual(str(soup), "<\u2122'")
soup = BeautifulStoneSoup(text, convertEntities=xhtmlEnt)
- self.assertEquals(unicode(soup), u"<\u2122'")
+ self.assertEqual(str(soup), "<\u2122'")
invalidEntity = "foobar;baz"
soup = BeautifulStoneSoup\
(invalidEntity,
convertEntities=htmlEnt)
- self.assertEquals(str(soup), "foo&#bar;baz")
+ self.assertEqual(str(soup), "foo&#bar;baz")
nonexistentEntity = "foo&bar;baz"
soup = BeautifulStoneSoup\
(nonexistentEntity,
convertEntities="xml")
- self.assertEquals(str(soup), nonexistentEntity)
+ self.assertEqual(str(soup), nonexistentEntity)
def testNonBreakingSpaces(self):
soup = BeautifulSoup(" ",
convertEntities=BeautifulStoneSoup.HTML_ENTITIES)
- self.assertEquals(unicode(soup), u"\xa0\xa0")
+ self.assertEqual(str(soup), "\xa0\xa0")
def testWhitespaceInDeclaration(self):
self.assertSoupEquals('', '')
@@ -701,41 +701,41 @@
soup = BeautifulSoup('',
convertEntities=BeautifulStoneSoup.HTML_ENTITIES)
- self.assertEquals(unicode(soup), u'')
+ self.assertEqual(str(soup), '')
uri = "http://crummy.com?sacré&bleu"
link = '' % uri
soup = BeautifulSoup(link)
- self.assertEquals(unicode(soup), link)
+ self.assertEqual(str(soup), link)
#self.assertEquals(unicode(soup.a['href']), uri)
soup = BeautifulSoup(link, convertEntities=BeautifulSoup.HTML_WARNING: couldn't encode BeautifulSoupTests.py's diff for your terminal
RefactoringTool: Files that were modified:
RefactoringTool: BeautifulSoupTests.py
ENTITIES)
- self.assertEquals(unicode(soup),
- link.replace("é", u"\xe9"))
+ self.assertEqual(str(soup),
+ link.replace("é", "\xe9"))
uri = "http://crummy.com?sacré&bleu"
link = '' % uri
soup = BeautifulSoup(link, convertEntities=BeautifulSoup.HTML_ENTITIES)
- self.assertEquals(unicode(soup.a['href']),
- uri.replace("é", u"\xe9"))
+ self.assertEqual(str(soup.a['href']),
+ uri.replace("é", "\xe9"))
def testNakedAmpersands(self):
html = {'convertEntities':BeautifulStoneSoup.HTML_ENTITIES}
soup = BeautifulStoneSoup("AT&T ", **html)
- self.assertEquals(str(soup), 'AT&T ')
+ self.assertEqual(str(soup), 'AT&T ')
nakedAmpersandInASentence = "AT&T was Ma Bell"
soup = BeautifulStoneSoup(nakedAmpersandInASentence,**html)
- self.assertEquals(str(soup), \
+ self.assertEqual(str(soup), \
nakedAmpersandInASentence.replace('&','&'))
invalidURL = 'foo'
validURL = invalidURL.replace('&','&')
soup = BeautifulStoneSoup(invalidURL)
- self.assertEquals(str(soup), validURL)
+ self.assertEqual(str(soup), validURL)
soup = BeautifulStoneSoup(validURL)
- self.assertEquals(str(soup), validURL)
+ self.assertEqual(str(soup), validURL)
class EncodeRed(SoupTest):
@@ -745,44 +745,44 @@
def testUnicodeDammitStandalone(self):
markup = "\x92"
dammit = UnicodeDammit(markup)
- self.assertEquals(dammit.unicode, "’")
+ self.assertEqual(dammit.str, "’")
hebrew = "\xed\xe5\xec\xf9"
dammit = UnicodeDammit(hebrew, ["iso-8859-8"])
- self.assertEquals(dammit.unicode, u'\u05dd\u05d5\u05dc\u05e9')
- self.assertEquals(dammit.originalEncoding, 'iso-8859-8')
+ self.assertEqual(dammit.str, '\u05dd\u05d5\u05dc\u05e9')
+ self.assertEqual(dammit.originalEncoding, 'iso-8859-8')
def testGarbageInGarbageOut(self):
ascii = "a"
asciiSoup = BeautifulStoneSoup(ascii)
- self.assertEquals(ascii, str(asciiSoup))
-
- unicodeData = u"\u00FC"
+ self.assertEqual(ascii, str(asciiSoup))
+
+ unicodeData = "\u00FC"
utf8 = unicodeData.encode("utf-8")
- self.assertEquals(utf8, '\xc3\xbc')
+ self.assertEqual(utf8, '\xc3\xbc')
unicodeSoup = BeautifulStoneSoup(unicodeData)
- self.assertEquals(unicodeData, unicode(unicodeSoup))
- self.assertEquals(unicode(unicodeSoup.foo.string), u'\u00FC')
+ self.assertEqual(unicodeData, str(unicodeSoup))
+ self.assertEqual(str(unicodeSoup.foo.string), '\u00FC')
utf8Soup = BeautifulStoneSoup(utf8, fromEncoding='utf-8')
- self.assertEquals(utf8, str(utf8Soup))
- self.assertEquals(utf8Soup.originalEncoding, "utf-8")
+ self.assertEqual(utf8, str(utf8Soup))
+ self.assertEqual(utf8Soup.originalEncoding, "utf-8")
utf8Soup = BeautifulStoneSoup(unicodeData)
- self.assertEquals(utf8, str(utf8Soup))
- self.assertEquals(utf8Soup.originalEncoding, None)
+ self.assertEqual(utf8, str(utf8Soup))
+ self.assertEqual(utf8Soup.originalEncoding, None)
def testHandleInvalidCodec(self):
for bad_encoding in ['.utf8', '...', 'utF---16.!']:
+ for i in '*.py'
+ 2to3 -w setup.py
RefactoringTool: Skipping optional fixer: buffer
RefactoringTool: Skipping optional fixer: idioms
RefactoringTool: Skipping optional fixer: set_literal
RefactoringTool: Skipping optional fixer: ws_comma
RefactoringTool: Refactored setup.py
RefactoringTool: Files that were modified:
RefactoringTool: setup.py
--- setup.py (original)
+++ setup.py (refactored)
@@ -19,19 +19,19 @@
suite = loader.loadTestsFromModule(BeautifulSoupTests)
suite.run(result)
if not result.wasSuccessful():
- print "Unit tests have failed!"
+ print("Unit tests have failed!")
for l in result.errors, result.failures:
for case, error in l:
- print "-" * 80
+ print("-" * 80)
desc = case.shortDescription()
if desc:
- print desc
- print error
- print '''If you see an error like: "'ascii' codec can't encode character...", see\nthe Beautiful Soup documentation:\n http://www.crummy.com/software/BeautifulSoup/documentation.html#Why%20can't%20Beautiful%20Soup%20print%20out%20the%20non-ASCII%20characters%20I%20gave%20it?'''
- print "This might or might not be a problem depending on what you plan to do with\nBeautiful Soup."
+ print(desc)
+ print(error)
+ print('''If you see an error like: "'ascii' codec can't encode character...", see\nthe Beautiful Soup documentation:\n http://www.crummy.com/software/BeautifulSoup/documentation.html#Why%20can't%20Beautiful%20Soup%20print%20out%20the%20non-ASCII%20characters%20I%20gave%20it?''')
+ print("This might or might not be a problem depending on what you plan to do with\nBeautiful Soup.")
if sys.argv[1] == 'sdist':
- print
- print "I'm not going to make a source distribution since the tests don't pass."
+ print()
+ print("I'm not going to make a source distribution since the tests don't pass.")
sys.exit(1)
setup(name="BeautifulSoup",
+ CFLAGS='-pipe -Wall -g -O2'
+ export CFLAGS
+ CXXFLAGS='-pipe -Wall -g -O2'
+ export CXXFLAGS
+ FFLAGS='-pipe -Wall -g -O2'
+ export FFLAGS
+ python3 setup.py build
Unit tests have failed!
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 221, in testText
self.assertEqual(soup.ul.text, "spameggscheese")
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 612, in testCData
self.assertSoupEquals(xml, xml)
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 620, in testComments
self.assertSoupEquals(xml)
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 628, in testDeclaration
self.assertSoupEquals(xml)
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 645, in testEntityConversions
self.assertSoupEquals(text)
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 696, in testEntityReplacement
self.assertSoupEquals('hello there')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 693, in testIncompleteDeclaration
self.assertSoupEquals('ac', 'a<!b <p>c')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 690, in testJunkInDeclaration
self.assertSoupEquals('a', '<!Foo = -8>a')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 725, in testNakedAmpersands
self.assertEqual(str(soup), 'AT&T ')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 684, in testNonBreakingSpaces
self.assertEqual(str(soup), "\xa0\xa0")
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 606, in testSelfClosingTagOrNot
self.assertEqual(BeautifulStoneSoup(text).renderContents(), text)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 589, in testSelfClosingtag
self.assertEqual(str(BeautifulSoup("Foo
Bar").find('br')),
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 879, in testDontConvertSmartQuotesWhenAlsoConvertingEntities
self.assertEqual(str(soup),
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 887, in testDontSeeSmartQuotesWhereThereAreNone
self.assertSoupEquals(utf_8)
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 758, in testGarbageInGarbageOut
self.assertEqual(ascii, str(asciiSoup))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 780, in testHandleInvalidCodec
self.assertEqual(soup.originalEncoding, 'utf-8')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 870, in testHebrew
self.assertEqual(str(soup), utf8)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 825, in testRewrittenMetaTag
soup = BeautifulSoup(shift_jis_html)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1523, in __init__
BeautifulStoneSoup.__init__(self, *args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1148, in __init__
self._feed(isHTML=isHTML)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1190, in _feed
SGMLParser.feed(self, markup)
File "/usr/lib/python3/site-packages/sgmllib.py", line 98, in feed
self.goahead(0)
File "/usr/lib/python3/site-packages/sgmllib.py", line 132, in goahead
k = self.parse_starttag(i)
File "/usr/lib/python3/site-packages/sgmllib.py", line 290, in parse_starttag
self.finish_starttag(tag, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 339, in finish_starttag
self.handle_starttag(tag, method, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 375, in handle_starttag
method(attrs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1598, in start_meta
if (self.declaredHTMLEncoding is not None or
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 791, in testRewrittenXMLHeader
if soup.originalEncoding != "euc-jp":
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 874, in testSmartQuotesNotSoSmartAnymore
'‘Foo’ ')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 785, in testUnicodeSearch
self.assertEqual(soup.find(text='Räksmörgås'),'Räksmörgås')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
The 'text' argument takes precedence.
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 117, in testConflictingFindArguments
self.assertEqual(soup.find('b', text='Baz'), 'Baz')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 42, in testFindAllByAttribute
matching = self.soup.findAll(id='x')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 79, in testFindAllByHash
matching = self.soup({'a' : True, 'b' : True})
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 660, in __call__
return self.findAll(*args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 75, in testFindAllByList
matching = self.soup(['a', 'ac'])
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 660, in __call__
return self.findAll(*args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 96, in testFindAllByMethod
matching = self.soup.findAll(matchTagWhereIDMatchesName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 35, in testFindAllByName
matching = self.soup('a')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 660, in __call__
return self.findAll(*args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in _findAll
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 90, in testFindAllByRE
self.assertEqual(len(self.soup(r)), 3)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 660, in __call__
return self.findAll(*args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 84, in testFindAllText
self.assertEqual(soup.findAll(text=re.compile('.*')),
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
For when you have the tag and you want to know where it is.
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 102, in testFindByIndex
tag = self.soup.find('a', id="a")
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 67, in testFindallByClass
self.assertEqual(soup.find(attrs='foo').string, "Foo")
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 133, in testNext
b = soup.find('b', {'id' : 2})
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 153, in testNextSibling
b = soup.find(tag, {'id' : 2})
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 125, in testParents
b = soup.b
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 141, in testPrevious
b = soup.find('b', {'id' : 3})
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 163, in testPreviousSibling
b = soup.find(tag, {'id' : 3})
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 172, in testTextNavigation
baz = soup.find(text='Baz')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 582, in testBadNestedTables
self.assertEqual(soup.table.tr.table.tr['id'], 'nested')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 565, in testNestedTables
self.assertEqual(soup.table.table.td.string, 'Juicy text')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 557, in testParaInsideBlockquote
self.assertEqual(soup.blockquote.p.b.string, 'Foo')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Tests that referencing a tag name as a member delegates to find().
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 541, in testTagNameAsFind
self.assertEqual(soup.b.i, soup.find('b').find('i'))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 282, in setUp
self.soup = BeautifulSoup(self.page)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1523, in __init__
BeautifulStoneSoup.__init__(self, *args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1148, in __init__
self._feed(isHTML=isHTML)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1190, in _feed
SGMLParser.feed(self, markup)
File "/usr/lib/python3/site-packages/sgmllib.py", line 98, in feed
self.goahead(0)
File "/usr/lib/python3/site-packages/sgmllib.py", line 132, in goahead
k = self.parse_starttag(i)
File "/usr/lib/python3/site-packages/sgmllib.py", line 290, in parse_starttag
self.finish_starttag(tag, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 339, in finish_starttag
self.handle_starttag(tag, method, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 375, in handle_starttag
method(attrs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1598, in start_meta
if (self.declaredHTMLEncoding is not None or
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 282, in setUp
self.soup = BeautifulSoup(self.page)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1523, in __init__
BeautifulStoneSoup.__init__(self, *args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1148, in __init__
self._feed(isHTML=isHTML)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1190, in _feed
SGMLParser.feed(self, markup)
File "/usr/lib/python3/site-packages/sgmllib.py", line 98, in feed
self.goahead(0)
File "/usr/lib/python3/site-packages/sgmllib.py", line 132, in goahead
k = self.parse_starttag(i)
File "/usr/lib/python3/site-packages/sgmllib.py", line 290, in parse_starttag
self.finish_starttag(tag, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 339, in finish_starttag
self.handle_starttag(tag, method, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 375, in handle_starttag
method(attrs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1598, in start_meta
if (self.declaredHTMLEncoding is not None or
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 282, in setUp
self.soup = BeautifulSoup(self.page)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1523, in __init__
BeautifulStoneSoup.__init__(self, *args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1148, in __init__
self._feed(isHTML=isHTML)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1190, in _feed
SGMLParser.feed(self, markup)
File "/usr/lib/python3/site-packages/sgmllib.py", line 98, in feed
self.goahead(0)
File "/usr/lib/python3/site-packages/sgmllib.py", line 132, in goahead
k = self.parse_starttag(i)
File "/usr/lib/python3/site-packages/sgmllib.py", line 290, in parse_starttag
self.finish_starttag(tag, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 339, in finish_starttag
self.handle_starttag(tag, method, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 375, in handle_starttag
method(attrs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1598, in start_meta
if (self.declaredHTMLEncoding is not None or
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 184, in testSiblings
secondLI = soup.find('li').nextSibling
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 206, in testLackOfString
self.assertTrue(not s.b.string)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 202, in testString
self.assertEqual(s.b.string, 'foo')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 210, in testStringAssign
b = s.b
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 195, in testLen
self.assertEqual(len(soup.top), 3)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 229, in testBasicLimits
self.assertEqual(len(s.findAll('br')), 4)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in _findAll
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 488, in testHasKey
self.assertEqual('attr' in BeautifulSoup(text).foo, True)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 898, in testCollapsedWhitespace
self.assertSoupEquals("
", "
")
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 894, in testPreservedWhitespace
self.assertSoupEquals("
")
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 420, in testAppend
second_para = soup('p')[1]
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 660, in __call__
return self.findAll(*args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in _findAll
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 480, in testClear
soup.ul.clear()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 310, in testModifyAttributes
soup.a['id'] = 2
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Makes sure new tags can be created complete with attributes.
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 330, in testNewTagWithAttributes
soup.insert(0,a)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 260, in insert
if newChildsLastElement.__next__:
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 413, in testReplaceWithChildren
soup.replaceTag.replaceWithChildren()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 665, in __getattr__
return self.find(tag[:-3])
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 432, in testTagExtraction
extracted = soup.find("div", id="nav").extract()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 339, in testTagReplacement
c = soup.c
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 526, in testLiteralMode
self.assertEqual(soup.script.contents[0], "if (i', '')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
AssertionError: '' != ''
-
+
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 687, in testWhitespaceInDeclaration
self.assertSoupEquals('', '')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
AssertionError: "" != ''
-
? -- -
+
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 748, in testUnicodeDammitStandalone
self.assertEqual(dammit.str, "’")
AssertionError: '\x92' != '’'
-
+ ’
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 255, in testOnly
self.assertEqual(len(soup), 10)
AssertionError: 0 != 10
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 494, in testQuotedAttributeValues
'')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
AssertionError: '' != ''
-
? -- ^^^^ - -- - -- -
+
? ^
If you see an error like: "'ascii' codec can't encode character...", see
the Beautiful Soup documentation:
http://www.crummy.com/software/BeautifulSoup/documentation.html#Why%20can't%20Beautiful%20Soup%20print%20out%20the%20non-ASCII%20characters%20I%20gave%20it?
This might or might not be a problem depending on what you plan to do with
Beautiful Soup.
running build
running build_py
creating build
creating build/lib
copying BeautifulSoup.py -> build/lib
copying BeautifulSoupTests.py -> build/lib
+ popd
~/RPM/BUILD/BeautifulSoup-3.2.1
+ exit 0
Executing(%install): /bin/sh -e /usr/src/tmp/rpm-tmp.47382
+ umask 022
+ /bin/mkdir -p /usr/src/RPM/BUILD
+ cd /usr/src/RPM/BUILD
+ /bin/chmod -Rf u+rwX -- /usr/src/tmp/python-module-BeautifulSoup-buildroot
+ :
+ /bin/rm -rf -- /usr/src/tmp/python-module-BeautifulSoup-buildroot
+ cd BeautifulSoup-3.2.1
+ export LC_ALL=en_US.UTF-8
+ LC_ALL=en_US.UTF-8
+ python setup.py install --root /usr/src/tmp/python-module-BeautifulSoup-buildroot --optimize=2
running install
running build
running build_py
running install_lib
creating /usr/src/tmp/python-module-BeautifulSoup-buildroot
creating /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr
creating /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib
creating /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7
creating /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages
copying build/lib/BeautifulSoupTests.py -> /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages
copying build/lib/BeautifulSoup.py -> /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages
byte-compiling /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoupTests.py to BeautifulSoupTests.pyc
byte-compiling /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.py to BeautifulSoup.pyc
writing byte-compilation script '/usr/src/tmp/tmpq0WXw4.py'
/usr/bin/python -OO /usr/src/tmp/tmpq0WXw4.py
removing /usr/src/tmp/tmpq0WXw4.py
running install_egg_info
Writing /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup-3.2.1-py2.7.egg-info
+ pushd ../python3
~/RPM/BUILD/python3 ~/RPM/BUILD/BeautifulSoup-3.2.1
+ python3 setup.py install --skip-build --root=/usr/src/tmp/python-module-BeautifulSoup-buildroot --force
Unit tests have failed!
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 221, in testText
self.assertEqual(soup.ul.text, "spameggscheese")
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 612, in testCData
self.assertSoupEquals(xml, xml)
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 620, in testComments
self.assertSoupEquals(xml)
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 628, in testDeclaration
self.assertSoupEquals(xml)
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 645, in testEntityConversions
self.assertSoupEquals(text)
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 696, in testEntityReplacement
self.assertSoupEquals('hello there')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 693, in testIncompleteDeclaration
self.assertSoupEquals('ac', 'a<!b <p>c')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 690, in testJunkInDeclaration
self.assertSoupEquals('a', '<!Foo = -8>a')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 725, in testNakedAmpersands
self.assertEqual(str(soup), 'AT&T ')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 684, in testNonBreakingSpaces
self.assertEqual(str(soup), "\xa0\xa0")
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 606, in testSelfClosingTagOrNot
self.assertEqual(BeautifulStoneSoup(text).renderContents(), text)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 589, in testSelfClosingtag
self.assertEqual(str(BeautifulSoup("Foo
Bar").find('br')),
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 879, in testDontConvertSmartQuotesWhenAlsoConvertingEntities
self.assertEqual(str(soup),
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 887, in testDontSeeSmartQuotesWhereThereAreNone
self.assertSoupEquals(utf_8)
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 758, in testGarbageInGarbageOut
self.assertEqual(ascii, str(asciiSoup))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 780, in testHandleInvalidCodec
self.assertEqual(soup.originalEncoding, 'utf-8')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 870, in testHebrew
self.assertEqual(str(soup), utf8)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 825, in testRewrittenMetaTag
soup = BeautifulSoup(shift_jis_html)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1523, in __init__
BeautifulStoneSoup.__init__(self, *args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1148, in __init__
self._feed(isHTML=isHTML)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1190, in _feed
SGMLParser.feed(self, markup)
File "/usr/lib/python3/site-packages/sgmllib.py", line 98, in feed
self.goahead(0)
File "/usr/lib/python3/site-packages/sgmllib.py", line 132, in goahead
k = self.parse_starttag(i)
File "/usr/lib/python3/site-packages/sgmllib.py", line 290, in parse_starttag
self.finish_starttag(tag, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 339, in finish_starttag
self.handle_starttag(tag, method, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 375, in handle_starttag
method(attrs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1598, in start_meta
if (self.declaredHTMLEncoding is not None or
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 791, in testRewrittenXMLHeader
if soup.originalEncoding != "euc-jp":
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 874, in testSmartQuotesNotSoSmartAnymore
'‘Foo’ ')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 785, in testUnicodeSearch
self.assertEqual(soup.find(text='Räksmörgås'),'Räksmörgås')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
The 'text' argument takes precedence.
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 117, in testConflictingFindArguments
self.assertEqual(soup.find('b', text='Baz'), 'Baz')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 42, in testFindAllByAttribute
matching = self.soup.findAll(id='x')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 79, in testFindAllByHash
matching = self.soup({'a' : True, 'b' : True})
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 660, in __call__
return self.findAll(*args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 75, in testFindAllByList
matching = self.soup(['a', 'ac'])
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 660, in __call__
return self.findAll(*args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 96, in testFindAllByMethod
matching = self.soup.findAll(matchTagWhereIDMatchesName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 35, in testFindAllByName
matching = self.soup('a')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 660, in __call__
return self.findAll(*args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in _findAll
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 90, in testFindAllByRE
self.assertEqual(len(self.soup(r)), 3)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 660, in __call__
return self.findAll(*args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 84, in testFindAllText
self.assertEqual(soup.findAll(text=re.compile('.*')),
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
For when you have the tag and you want to know where it is.
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 102, in testFindByIndex
tag = self.soup.find('a', id="a")
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 67, in testFindallByClass
self.assertEqual(soup.find(attrs='foo').string, "Foo")
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 133, in testNext
b = soup.find('b', {'id' : 2})
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 153, in testNextSibling
b = soup.find(tag, {'id' : 2})
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 125, in testParents
b = soup.b
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 141, in testPrevious
b = soup.find('b', {'id' : 3})
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 163, in testPreviousSibling
b = soup.find(tag, {'id' : 3})
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 172, in testTextNavigation
baz = soup.find(text='Baz')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 582, in testBadNestedTables
self.assertEqual(soup.table.tr.table.tr['id'], 'nested')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 565, in testNestedTables
self.assertEqual(soup.table.table.td.string, 'Juicy text')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 557, in testParaInsideBlockquote
self.assertEqual(soup.blockquote.p.b.string, 'Foo')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Tests that referencing a tag name as a member delegates to find().
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 541, in testTagNameAsFind
self.assertEqual(soup.b.i, soup.find('b').find('i'))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 282, in setUp
self.soup = BeautifulSoup(self.page)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1523, in __init__
BeautifulStoneSoup.__init__(self, *args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1148, in __init__
self._feed(isHTML=isHTML)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1190, in _feed
SGMLParser.feed(self, markup)
File "/usr/lib/python3/site-packages/sgmllib.py", line 98, in feed
self.goahead(0)
File "/usr/lib/python3/site-packages/sgmllib.py", line 132, in goahead
k = self.parse_starttag(i)
File "/usr/lib/python3/site-packages/sgmllib.py", line 290, in parse_starttag
self.finish_starttag(tag, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 339, in finish_starttag
self.handle_starttag(tag, method, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 375, in handle_starttag
method(attrs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1598, in start_meta
if (self.declaredHTMLEncoding is not None or
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 282, in setUp
self.soup = BeautifulSoup(self.page)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1523, in __init__
BeautifulStoneSoup.__init__(self, *args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1148, in __init__
self._feed(isHTML=isHTML)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1190, in _feed
SGMLParser.feed(self, markup)
File "/usr/lib/python3/site-packages/sgmllib.py", line 98, in feed
self.goahead(0)
File "/usr/lib/python3/site-packages/sgmllib.py", line 132, in goahead
k = self.parse_starttag(i)
File "/usr/lib/python3/site-packages/sgmllib.py", line 290, in parse_starttag
self.finish_starttag(tag, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 339, in finish_starttag
self.handle_starttag(tag, method, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 375, in handle_starttag
method(attrs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1598, in start_meta
if (self.declaredHTMLEncoding is not None or
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 282, in setUp
self.soup = BeautifulSoup(self.page)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1523, in __init__
BeautifulStoneSoup.__init__(self, *args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1148, in __init__
self._feed(isHTML=isHTML)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1190, in _feed
SGMLParser.feed(self, markup)
File "/usr/lib/python3/site-packages/sgmllib.py", line 98, in feed
self.goahead(0)
File "/usr/lib/python3/site-packages/sgmllib.py", line 132, in goahead
k = self.parse_starttag(i)
File "/usr/lib/python3/site-packages/sgmllib.py", line 290, in parse_starttag
self.finish_starttag(tag, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 339, in finish_starttag
self.handle_starttag(tag, method, attrs)
File "/usr/lib/python3/site-packages/sgmllib.py", line 375, in handle_starttag
method(attrs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1598, in start_meta
if (self.declaredHTMLEncoding is not None or
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 184, in testSiblings
secondLI = soup.find('li').nextSibling
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 206, in testLackOfString
self.assertTrue(not s.b.string)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 202, in testString
self.assertEqual(s.b.string, 'foo')
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 210, in testStringAssign
b = s.b
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 195, in testLen
self.assertEqual(len(soup.top), 3)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 229, in testBasicLimits
self.assertEqual(len(s.findAll('br')), 4)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in _findAll
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 488, in testHasKey
self.assertEqual('attr' in BeautifulSoup(text).foo, True)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 898, in testCollapsedWhitespace
self.assertSoupEquals("
", "
")
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 894, in testPreservedWhitespace
self.assertSoupEquals("
")
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 812, in renderContents
s.append(c.__str__(encoding, prettyPrint, indentLevel))
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 758, in __str__
contents = self.renderContents(encoding, prettyPrint, indentContents)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 821, in renderContents
return ''.join(s)
TypeError: sequence item 0: expected str instance, bytes found
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 420, in testAppend
second_para = soup('p')[1]
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 660, in __call__
return self.findAll(*args, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in _findAll
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 362, in
return [element for element in generator()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 480, in testClear
soup.ul.clear()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 310, in testModifyAttributes
soup.a['id'] = 2
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Makes sure new tags can be created complete with attributes.
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 330, in testNewTagWithAttributes
soup.insert(0,a)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 260, in insert
if newChildsLastElement.__next__:
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 413, in testReplaceWithChildren
soup.replaceTag.replaceWithChildren()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 665, in __getattr__
return self.find(tag[:-3])
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 432, in testTagExtraction
extracted = soup.find("div", id="nav").extract()
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 474, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__.__name__, attr))
AttributeError: 'NavigableString' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 339, in testTagReplacement
c = soup.c
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 1205, in __getattr__
return Tag.__getattr__(self, methodName)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 667, in __getattr__
return self.find(tag)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 830, in find
l = self.findAll(name, attrs, recursive, text, 1, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 850, in findAll
return self._findAll(name, attrs, text, limit, generator, **kwargs)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 374, in _findAll
i = next(g)
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 882, in recursiveChildGenerator
stopNode = self._lastRecursiveChild().__next__
File "/usr/src/RPM/BUILD/python3/BeautifulSoup.py", line 668, in __getattr__
raise AttributeError("'%s' object has no attribute '%s'" % (self.__class__, tag))
AttributeError: '' object has no attribute '__next__'
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 526, in testLiteralMode
self.assertEqual(soup.script.contents[0], "if (i', '')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
AssertionError: '' != ''
-
+
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 687, in testWhitespaceInDeclaration
self.assertSoupEquals('', '')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
AssertionError: "" != ''
-
? -- -
+
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 748, in testUnicodeDammitStandalone
self.assertEqual(dammit.str, "’")
AssertionError: '\x92' != '’'
-
+ ’
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 255, in testOnly
self.assertEqual(len(soup), 10)
AssertionError: 0 != 10
--------------------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 494, in testQuotedAttributeValues
'')
File "/usr/src/RPM/BUILD/python3/BeautifulSoupTests.py", line 18, in assertSoupEquals
self.assertEqual(str(c(toParse)), rep)
AssertionError: '' != ''
-
? -- ^^^^ - -- - -- -
+
? ^
If you see an error like: "'ascii' codec can't encode character...", see
the Beautiful Soup documentation:
http://www.crummy.com/software/BeautifulSoup/documentation.html#Why%20can't%20Beautiful%20Soup%20print%20out%20the%20non-ASCII%20characters%20I%20gave%20it?
This might or might not be a problem depending on what you plan to do with
Beautiful Soup.
running install
running install_lib
creating /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3
creating /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages
copying build/lib/BeautifulSoupTests.py -> /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages
copying build/lib/BeautifulSoup.py -> /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages
byte-compiling /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoupTests.py to BeautifulSoupTests.cpython-35.pyc
byte-compiling /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup.py to BeautifulSoup.cpython-35.pyc
running install_egg_info
Writing /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup-3.2.1-py3.5.egg-info
+ popd
~/RPM/BUILD/BeautifulSoup-3.2.1
+ /usr/lib/rpm/brp-alt
Cleaning files in /usr/src/tmp/python-module-BeautifulSoup-buildroot (auto)
Verifying and fixing files in /usr/src/tmp/python-module-BeautifulSoup-buildroot (binconfig,pkgconfig,libtool,desktop)
Compressing files in /usr/src/tmp/python-module-BeautifulSoup-buildroot (auto)
Adjusting library links in /usr/src/tmp/python-module-BeautifulSoup-buildroot
./usr/lib:
Verifying ELF objects in /usr/src/tmp/python-module-BeautifulSoup-buildroot (arch=normal,fhs=normal,lfs=relaxed,lint=relaxed,rpath=normal,stack=normal,textrel=normal,unresolved=normal)
Bytecompiling python modules in /usr/src/tmp/python-module-BeautifulSoup-buildroot using /usr/bin/python2.7
unlink /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.pyc
unlink /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoupTests.pyc
compile /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.py
compile /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoupTests.py
Bytecompiling python modules with optimization in /usr/src/tmp/python-module-BeautifulSoup-buildroot using /usr/bin/python2.7 -O
unlink /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.pyo
unlink /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoupTests.pyo
compile /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.py
compile /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoupTests.py
Bytecompiling python3 modules in /usr/src/tmp/python-module-BeautifulSoup-buildroot using python3
unlink /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/__pycache__/BeautifulSoup.cpython-35.pyc
unlink /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/__pycache__/BeautifulSoupTests.cpython-35.pyc
compile /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup.py
compile /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoupTests.py
Bytecompiling python3 modules with optimization in /usr/src/tmp/python-module-BeautifulSoup-buildroot using python3 -O
compile /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup.py
compile /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoupTests.py
Bytecompiling python3 modules with optimization-2 in /usr/src/tmp/python-module-BeautifulSoup-buildroot using python3 -OO
compile /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup.py
compile /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoupTests.py
Hardlinking identical .pyc and .opt-?.pyc files
'./usr/lib/python3/site-packages/__pycache__/BeautifulSoupTests.cpython-35.opt-1.pyc' => './usr/lib/python3/site-packages/__pycache__/BeautifulSoupTests.cpython-35.pyc'
'./usr/lib/python3/site-packages/__pycache__/BeautifulSoup.cpython-35.opt-1.pyc' => './usr/lib/python3/site-packages/__pycache__/BeautifulSoup.cpython-35.pyc'
Hardlinking identical .pyc and .pyo files
'./usr/lib/python2.7/site-packages/BeautifulSoupTests.pyo' => './usr/lib/python2.7/site-packages/BeautifulSoupTests.pyc'
'./usr/lib/python2.7/site-packages/BeautifulSoup.pyo' => './usr/lib/python2.7/site-packages/BeautifulSoup.pyc'
Processing files: python-module-BeautifulSoup-3.2.1-alt2.1.1.1
Finding Provides (using /usr/lib/rpm/find-provides)
Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.hw4qY3
find-provides: running scripts (alternatives,debuginfo,lib,pam,perl,pkgconfig,python,python3,shell)
Finding Requires (using /usr/lib/rpm/find-requires)
Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.x1uZK3
find-requires: running scripts (cpp,debuginfo,files,lib,pam,perl,pkgconfig,pkgconfiglib,python,python3,rpmlib,shebang,shell,static,symlinks)
/usr/lib/rpm/python.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.py: line=93 IGNORE (for REQ=slight and deep=8) module=htmlentitydefs
/usr/lib/rpm/python.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.py: line=99 IGNORE (for REQ=slight and deep=8) module=sets
/usr/lib/rpm/python.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.py: line=1738 IGNORE (for REQ=slight and deep=8) module=chardet
/usr/lib/rpm/python.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.py: line=1748 IGNORE (for REQ=slight and deep=8) module=cjkcodecs
/usr/lib/rpm/python.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.py: line=1752 IGNORE (for REQ=slight and deep=8) module=iconv_codec
/usr/lib/rpm/python.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.py: line=1972 IGNORE (for REQ=slight and deep=15) module=string
/usr/lib/rpm/python.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoup.py: line=2015 IGNORE (for REQ=slight and deep=8) module=sys
python.req: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoupTests.py: hiding BeautifulSoup, which SEEMS TO BE SELF-SATISFIED
/usr/lib/rpm/python.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoupTests.py: line=88 IGNORE (for REQ=slight and deep=11) module=re
/usr/lib/rpm/python.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoupTests.py: line=285 IGNORE (for REQ=slight and deep=11) module=pickle
/usr/lib/rpm/python.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoupTests.py: line=292 IGNORE (for REQ=slight and deep=11) module=copy
/usr/lib/rpm/python.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python2.7/site-packages/BeautifulSoupTests.py: line=297 IGNORE (for REQ=slight and deep=11) module=cPickle
Provides: python2.7-module-BeautifulSoup = 3.2.1-alt2.1.1.1, python2.7(BeautifulSoup), python2.7(BeautifulSoupTests)
Requires: python = 2.7, /usr/lib/python2.7/site-packages, python-modules, python2.7(unittest)
Processing files: python3-module-BeautifulSoup-3.2.1-alt2.1.1.1
Finding Provides (using /usr/lib/rpm/find-provides)
Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.nb59D6
find-provides: running scripts (alternatives,debuginfo,lib,pam,perl,pkgconfig,python,python3,shell)
Finding Requires (using /usr/lib/rpm/find-requires)
Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.XGg4Dc
find-requires: running scripts (cpp,debuginfo,files,lib,pam,perl,pkgconfig,pkgconfiglib,python,python3,rpmlib,shebang,shell,static,symlinks)
/usr/lib/rpm/python3.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup.py: line=94 IGNORE (for REQ=slight and deep=8) module=html
/usr/lib/rpm/python3.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup.py: line=100 IGNORE (for REQ=slight and deep=8) module=sets
/usr/lib/rpm/python3.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup.py: line=1739 IGNORE (for REQ=slight and deep=8) module=chardet
/usr/lib/rpm/python3.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup.py: line=1749 IGNORE (for REQ=slight and deep=8) module=cjkcodecs
/usr/lib/rpm/python3.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup.py: line=1753 IGNORE (for REQ=slight and deep=8) module=iconv_codec
/usr/lib/rpm/python3.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup.py: line=1973 IGNORE (for REQ=slight and deep=15) module=string
/usr/lib/rpm/python3.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoup.py: line=2016 IGNORE (for REQ=slight and deep=8) module=sys
/usr/lib/rpm/python3.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoupTests.py: line=88 IGNORE (for REQ=slight and deep=11) module=re
/usr/lib/rpm/python3.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoupTests.py: line=285 IGNORE (for REQ=slight and deep=11) module=pickle
/usr/lib/rpm/python3.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoupTests.py: line=292 IGNORE (for REQ=slight and deep=11) module=copy
/usr/lib/rpm/python3.req.py: /usr/src/tmp/python-module-BeautifulSoup-buildroot/usr/lib/python3/site-packages/BeautifulSoupTests.py: line=297 IGNORE (for REQ=slight and deep=11) module=pickle
Provides: python3(BeautifulSoup), python3(BeautifulSoupTests), python3.3(BeautifulSoup), python3.3(BeautifulSoupTests)
Requires: /usr/lib/python3/site-packages, python3(_markupbase) < 0, python3(codecs) < 0, python3(collections) < 0, python3(re) < 0, python3(sgmllib) < 0, python3(types) < 0, python3(unittest) < 0
Wrote: /usr/src/RPM/RPMS/noarch/python-module-BeautifulSoup-3.2.1-alt2.1.1.1.noarch.rpm
Wrote: /usr/src/RPM/RPMS/noarch/python3-module-BeautifulSoup-3.2.1-alt2.1.1.1.noarch.rpm
6.45user 0.54system 0:11.63elapsed 60%CPU (0avgtext+0avgdata 37904maxresident)k
0inputs+0outputs (0major+215825minor)pagefaults 0swaps
10.59user 2.67system 0:18.81elapsed 70%CPU (0avgtext+0avgdata 122100maxresident)k
32inputs+0outputs (0major+454146minor)pagefaults 0swaps
--- python3-module-BeautifulSoup-3.2.1-alt2.1.1.1.noarch.rpm.repo 2016-04-11 16:18:53.000000000 +0000
+++ python3-module-BeautifulSoup-3.2.1-alt2.1.1.1.noarch.rpm.hasher 2019-04-21 00:54:09.582915140 +0000
@@ -6,12 +6,14 @@
/usr/lib/python3/site-packages/__pycache__/BeautifulSoup.cpython-35.opt-2.pyc 100644
+/usr/lib/python3/site-packages/__pycache__/BeautifulSoup.cpython-35.pyc 100644
/usr/lib/python3/site-packages/__pycache__/BeautifulSoupTests.cpython-35.opt-1.pyc 100644
/usr/lib/python3/site-packages/__pycache__/BeautifulSoupTests.cpython-35.opt-2.pyc 100644
+/usr/lib/python3/site-packages/__pycache__/BeautifulSoupTests.cpython-35.pyc 100644
Requires: /usr/lib/python3/site-packages
-Requires: python3(_markupbase)
-Requires: python3(codecs)
-Requires: python3(collections)
-Requires: python3(re)
-Requires: python3(sgmllib)
-Requires: python3(types)
-Requires: python3(unittest)
+Requires: python3(_markupbase) < 0
+Requires: python3(codecs) < 0
+Requires: python3(collections) < 0
+Requires: python3(re) < 0
+Requires: python3(sgmllib) < 0
+Requires: python3(types) < 0
+Requires: python3(unittest) < 0
Requires: rpmlib(PayloadIsLzma)
|