2017-05-18 4 views
0

나는 웹 사이트를 크롤링하고 오프라인 브라우징을 위해 선택한 페이지를 저장하고 있습니다. 물론 페이지 간의 연결이 끊어져서 그것에 대해 뭔가를하고 싶습니다. 내가 링크 된 자원의 경로가 페이지에 상대적으로 기능이 상대 경로를 결정하기 위해 두 개의 URL 경로를해야 이해절대 URL을 상대 URL 경로로 바꾸는 Python 함수가 있습니까?

/folder1/folder2/somepage.html becomes----> folder2/somepage.html 
/folder1/otherpage.html   becomes----> ../otherpage.html 

: 바퀴를 개혁하지 않고이 같은 URL 경로를 상대화하는 파이썬에서 다소 간단한 방법이 있나요 에 나타납니다.

+1

의 사용 가능한 복제 [파이썬 :이 개 절대 경로를 비교에서 상대 경로를 가져옵니다 (http://stackoverflow.com/ questions/7287996/python-get-relative-path-from-comparison-2-absolute-paths) – Mureinik

답변

0

새로운 pathlib (중복에 언급 간략하게)도 URL을 작동 :

from pathlib import Path 

abs_p = Path('https://docs.python.org/3/library/pathlib.html') 
rel_p = abs_p.relative_to('https://docs.python.org/3/') 
print(rel_p) # library/pathlib.html 
+0

고마워요! 이것은 유망 해 보입니다. 그러나 파이썬 2.7을 사용하고 있다는 것을 잊어 버렸습니다. 그 이유는 그것이 mac osx에 설치된 버전이기 때문에 이식성이 있기를 바랍니다. 그 밖의 것이 없다면 소스 코드를 살펴보고 소스가 2.7에서 작동한다고 가정하고 필요한 비트를 고를 수 있습니다. – yogert909