Мне нужно разобрать html-страницу, которая ищет ссылки в ней. К сожалению, ссылки не содержат полный URL (например, начиная с «http://www.example.com/aResource.html»). Так что мой разборе получить только относительный URL, для получить весь адрес URL-адрес, я используюPython parsing html для полных ссылок urls
urlparse.urljoin()
Но часто это приводит к некоторым ошибкам соединения, и в целом я бы предпочел прямой способ извлечь ссылку comlplete URL. Вот мой код:
import urlparse
import requests
from lxml import html
from lxml import etree
aFile = requests.get(url)
tree = html.fromstring(aFile.text)
linkList = tree.xpath('//a')
urls = []
for link in linkList:
urls.append(str(urlparse.urljoin(url,link.get('href'))))
Как вы можете видеть, я работаю с LXML, но я также пытался с BeautifulSoup без успеха.
, что это адрес? –
Возможный дубликат: http://stackoverflow.com/questions/717541/parsing-html-in-python?rq=1 – nchen24
@PadraicCunningham URL-адрес выглядит следующим образом: http://example.com/path/0VPZUJL06JKS/U09R71 .html. И в теге link указан только элемент из последнего «/» – accand