It seems that making iterlinks() return links inside meta refresh tags broke make_links_ absolute.
Sample testcase:
from lxml.html import fromstring, tostring
html = """<html> <head>< meta http-equiv= "refresh" content="0; url=http:// example. com/"></head> <body>< /body>< /html>" ""
doc = fromstring(html)
doc.make_ links_absolute( base_url= "http:// www.mypage. com/")
print tostring(doc)
lxml 3.3.6:
<html><head><meta http-equiv= "refresh" content="0; url=http:// example. com/"></head> <body>< /body>< /html>
lxml 3.4.2:
<html><head><meta http-equiv= "refresh" content="0; urlhttp: //www.mypage. com/url=http:// example. com/"></head> <body>< /body>< /html>
More info about my system:
>>> print("%-20s: %s" % ('Python', sys.version_info))
Python : sys.version_ info(major= 2, minor=7, micro=5, releaselevel= 'final' , serial=0)
>>> print("%-20s: %s" % ('lxml.etree', etree.LXML_ VERSION) )
lxml.etree : (3, 3, 6, 0)
>>> print("%-20s: %s" % ('libxml used', etree.LIBXML_ VERSION) )
libxml used : (2, 9, 1)
>>> print("%-20s: %s" % ('libxml compiled', etree.LIBXML_ COMPILED_ VERSION) )
libxml compiled : (2, 9, 1)
>>> print("%-20s: %s" % ('libxslt used', etree.LIBXSLT_ VERSION) )
libxslt used : (1, 1, 28)
>>> print("%-20s: %s" % ('libxslt compiled', etree.LIBXSLT_ COMPILED_ VERSION) )
libxslt compiled : (1, 1, 28)
>>>
>>> print("%-20s: %s" % ('Python', sys.version_info))
Python : sys.version_ info(major= 2, minor=7, micro=5, releaselevel= 'final' , serial=0)
>>> print("%-20s: %s" % ('lxml.etree', etree.LXML_ VERSION) )
lxml.etree : (3, 4, 2, 0)
>>> print("%-20s: %s" % ('libxml used', etree.LIBXML_ VERSION) )
libxml used : (2, 9, 1)
>>> print("%-20s: %s" % ('libxml compiled', etree.LIBXML_ COMPILED_ VERSION) )
libxml compiled : (2, 9, 1)
>>> print("%-20s: %s" % ('libxslt used', etree.LIBXSLT_ VERSION) )
libxslt used : (1, 1, 28)
>>> print("%-20s: %s" % ('libxslt compiled', etree.LIBXSLT_ COMPILED_ VERSION) )
libxslt compiled : (1, 1, 28)