[swift] SwiftSoup을 이용해 웹페이지에서 모든 특정 태그를 선택하는 방법은 무엇인가요?
- SwiftSoup 라이브러리를 프로젝트에 추가합니다.
- 웹페이지의 HTML을 SwiftSoup로 파싱합니다.
- Selector를 사용하여 원하는 태그를 선택합니다.
아래는 예시 코드입니다.
import SwiftSoup
do {
// 웹페이지 URL을 생성합니다.
let url = URL(string: "https://www.example.com")!
// 웹페이지의 HTML을 가져옵니다.
let html = try String(contentsOf: url, encoding: .utf8)
// SwiftSoup으로 HTML을 파싱합니다.
let document = try SwiftSoup.parse(html)
// 모든 <a> 태그를 선택합니다.
let links = try document.select("a")
// 선택된 태그들을 순회하며 원하는 작업을 수행합니다.
for link in links {
let href = try link.attr("href")
print(href)
}
} catch let error {
print("Error: \(error.localizedDescription)")
}
위의 코드는 https://www.example.com
웹페이지에서 모든 <a>
태그를 선택하여 각 링크의 href
속성을 출력하는 예시입니다.
추가적인 정보는 SwiftSoup의 공식 문서를 참고하시기 바랍니다.
- SwiftSoup GitHub 저장소: https://github.com/scinfu/SwiftSoup
- SwiftSoup 문서: https://scinfu.github.io/SwiftSoup/
잘못된 URL이나 파싱 오류 등의 이유로 예외가 발생할 수 있으므로, 오류 처리에 주의해야 합니다.