我正在尝试抓取一个使用大量相对 URL 的网站。一个存档页面包含指向许多单独条目的链接,但 URL 的给出方式类似于“../2011/category/example.html”
对于每个条目,我想打开页面并抓取它,但我不确定最有效的处理方法是什么。我正在考虑用“/”分割起始 URL,弹出最后一项并重新加入它们,以获取基本 URL。
不过,这看起来像是一个障碍。有没有更干净的方法?
最佳答案
要从相对 URL 构造绝对 URL,请使用 urlparse.urljoin
( docs here )。
但是,如果您使用像 mechanize
这样的浏览系统进行爬行,则可以简单地首先获取绝对网址,然后向浏览器提供相对网址。浏览器将跟踪状态并自动从与先前请求相同的域中获取 URL。
关于python - BeautifulSoup 理解相对 URL 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13077419/