加速数据采集:用OkHttp和Kotlin构建Amazon图片爬虫
import okhttp3.OkHttpClient
import okhttp3.Request
import okhttp3.Response
import org.jsoup.Jsoup
import java.net.URL
// 使用OkHttp和Kotlin从Amazon图片网页爬取图片链接
fun fetchImagesFromAmazon(productUrl: String): List<String> {
val client = OkHttpClient()
val request = Request.Builder()
.url(productUrl)
.build()
client.newCall(request).execute().use { response ->
if (!response.isSuccessful) throw Exception("Unexpected code $response")
val document = Jsoup.parse(response.body?.string())
return document.select("img.img-primary").map {
it.absUrl("src")
}
}
}
// 测试函数
fun main() {
val productUrl = "https://www.amazon.com/dp/B01M8L5Z3Q"
val images = fetchImagesFromAmazon(productUrl)
println(images)
}
这段代码使用了OkHttp库来发送HTTP请求,并使用了Jsoup来解析HTML并提取图片链接。函数fetchImagesFromAmazon
接收产品的URL,发送HTTP请求,解析返回的HTML,并提取主要图片的绝对URL。在主函数main
中,我们测试了这个函数,并打印了获取的图片链接列表。
评论已关闭