我正在使用scala-scraper庫進行網頁抓取。我想創建一個List[JSoupBrowser]
,其中包含具有唯一用戶代理的JsoupBrowsers
列表。目前,我有以下的代碼,Scala JsoupBrowser set UserAgent
import net.ruippeixotog.scalascraper.browser.{JsoupBrowser => JSB}
class Scraper() {
def userAgents : List[String] =
List (
"Mozilla/5.0 (Linux; Android 7.0; Pixel C Build/NRD90M; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/52.0.2743.98 Safari/537.36"
)
def browsers : List[JSB] = userAgents.foreach(agent => JSB(agent)) // throws err
// def browsers: List[JSB] = userAgents.foreach(agent => JSB()) // no err
}
然而,這引發錯誤
Cannot resolve reference JSoupBrowser with such signature
望着scala-scraper JSoupBrowser source 透露類聲明
class JsoupBrowser(val userAgent: String = "jsoup/1.8", val proxy: java.net.Proxy = null) extends Browser
我是新來的斯卡拉,所以也許這只是一個英里對建設者的理解。
當爲可選參數userAgent
提供具有正確類型的參數並且默認構造函數正常工作時,爲什麼第一次拋出錯誤?
我願意接受我的答案,但你要好得多。謝謝! – Skam