提取的字符串里有好多链接,都是相对路径,如何把这些都改成绝对路径? 比如:改成 实际上就是修改 href 的内容,先提取出 href ,再用 urljoin 转换成绝对路径,但是怎么找每个链接的 href 的位置呢?
提取的字符串里有好多链接,都是相对路径,如何把这些都改成绝对路径? 比如:改成 实际上就是修改 href 的内容,先提取出 href ,再用 urljoin 转换成绝对路径,但是怎么找每个链接的 href 的位置呢?
|
1
上面发贴失误,是这样的:
提取的字符串里有好多链接,都是相对路径,如何把这些都改成绝对路径? 比如: href="about.html"改成 href="http://www.abc.com/about.html" 实际上就是修改 href 的内容,先提取出 href ,再用 urljoin 转换成绝对路径,但是怎么找每个链接的 href 的位置呢? |
|
imn1Apr 15, 2017
2
不需要找位置,知道当前页面的 URL(目录)就行了
http://www.abc.com/about.html http://www.abc.com//about.html http://www.abc.com/xxx//about.html http://www.abc.com/xxx/xxx2/../../about.html 这些都会走到同一个页面的,不用担心 |
|
imn1Apr 15, 2017
3
还有,记得 python 中计算相对路径和绝对路径的函数,对 URL 也适用,你找找
|
|
4
@imn1 是我提问没说明白,我是想要改成绝对路径的字符串,比如我把别的网站一个页面取下来传到我的网站上,那这个页面上相对路径的 about.html 指向的是我的网站,我要的是指向他的网站的 about.html ,所以要把这里的相对路径改成绝对路径。
|
|
dsg001Apr 15, 2017
6
bs4 , lxml 都可以
|
|
FYKApr 15, 2017 via iPhone
7
直接改吧?你是想让它自动变成绝对路径?
|
|
phrackApr 15, 2017 via Android
8
|
|
jiangzhuoApr 15, 2017
9
这个浏览器会自己改吧,不用你管。。
|
|
anuanApr 16, 2017
10
正则
|