Python에서 lxml을 사용해보고 있습니다. findall() 함수의 안에 넣는 인자의 형식이 이해가 안됩니다.

feelpassion의 이미지

안녕하세요?

Python for Data Analysis 책을 보면서 공부하고 있는 중에 궁금한 점이 생겼습니다.
링크의 목록을 찾기 위해 아래와 같이 명령을 실행했습니다.

parsed = parse(urlopen('http://....')
doc = parsed.getroot()
links = doc.findall('.//a')

위의 구문 중에서 './/a' 이 부분이 이해가 안됩니다.
이 링크를 찾으려고 하는데 왜 .// 이 기호가 앞에 붙는 것인지요?

너무 초보적인 질문이라 살짝 부끄럽지만 궁금해서요ㅎㅎ

즐거운 하루 되세요~~~

peecky의 이미지

XPath 문법인 것 같습니다.

https://docs.python.org/2/library/xml.etree.elementtree.html#supported-xpath-syntax
이 문서의 19.7.2.2. Supported XPath syntax 항목 참고해보세요.

feelpassion의 이미지

덕분에 한 번에 알게 되었네요^^

남으로 창을 내겠소.
밭이 한참갈이 괭이로 파고 호미론 김을 메지요.
구름이 꼬인다 갈리있소. 새들의 노래는 공으로 들으랴오.
강냉이가 익거든 와자셔도 좋소.
왜 사냐건 웃지요.