[swift] SwiftSoup을 이용해 웹페이지의 링크를 추출하는 방법은 무엇인가요?
-
SwiftSoup 프레임워크를 프로젝트에 추가합니다. 이를 위해
Podfile
에SwiftSoup
를 추가한 후, 터미널에서pod install
명령어를 실행합니다. - SwiftSoup을 import합니다.
import SwiftSoup
- 웹페이지의 HTML 코드를 가져옵니다.
guard let url = URL(string: "http://example.com") else { return } do { let html = try String(contentsOf: url) let doc = try SwiftSoup.parse(html) // 링크 추출 작업을 수행합니다. } catch { print("Error: \(error)") }
- 스윕소프 객체를 이용해 웹페이지의 링크를 추출합니다. 예를 들어, 모든
<a>
태그를 찾아서 링크를 추출하는 경우 다음과 같이 작성합니다.do { let links = try doc.select("a") for link: Element in links.array() { let href = try link.attr("href") print(href) } } catch { print("Error: \(error)") }
위의 코드를 실행하면 웹페이지에서 모든 링크를 추출하여 출력할 수 있습니다.
SwiftSoup을 사용하면 웹페이지의 HTML 코드를 파싱하여 원하는 정보를 추출할 수 있습니다. 위의 예제에서는 링크를 추출하는 방법을 소개하였지만, 다른 요소를 추출하는 방법도 유사합니다. SwiftSoup 라이브러리의 문서를 참고하면 더 자세한 내용을 확인할 수 있습니다.
참고 문서: