Я пытаюсь получить содержимое: https://www.towncity.com/property/whole-hotel-for-sale-in-riverside-area/ как это:
class LinkParser(HTMLParser):
def handle_starttag(self, tag, attrs):
if tag == 'a':
for (key, value) in attrs:
if key == 'href':
newUrl = parse.urljoin(self.baseUrl, value)
self.links = self.links + [newUrl]
def getLinks(self, url):
self.links = []
self.baseUrl = url
timeOut = False
try:
req = Request(url, headers={'User-Agent': 'Mozilla/5.0'})
response = urlopen(req,timeout=20)
except:
timeOut = True
print(url,'timed out')
if timeOut:
return "timeOut",[]
if 'text/html' in response.getheader('Content-Type') and not timeOut:
htmlBytes = response.read()
try:
htmlString = htmlBytes.decode("utf-8")
except:
htmlString = htmlBytes.decode("ISO-8859-1")
self.feed(htmlString)
return htmlString, self.links
else:
return "",[]
parser = LinkParser()
data, links = parser.getLinks("https://www.towncity.com/property/whole-hotel-for-sale-in-riverside-area/")
То, что я получаю, отличается от фактического содержимого страницы (как видно из источника просмотра Chrome). Я заметил, что чего-то не хватает в окнах с вкладками на страницах, не так ли? Если да, то как мне получить весь контент со страниц?